community.aws.iam_managed_policy – Управление управляемыми пользователями политиками IAM
Примечание
Этот плагин входит в коллекцию community.aws (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.aws.
Для использования в книге задач, укажите: community.aws.iam_managed_policy.
Новое в версии 1.0.0: модуля community.aws
Обзор
- Позволяет создавать и удалять управляемые политики IAM.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- boto
- boto3
- botocore
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| aws_access_key строка | Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. Если задан параметр profile, этот параметр игнорируется. Одновременное использование параметров aws_access_key и profile устарело и будет сделано взаимоисключающим после 2022-06-01. Псевдонимы: ec2_access_key, access_key | |
| aws_ca_bundle путь | Расположение файла сертификата CA для проверки SSL-сертификатов. Используется только для модулей, основанных на boto3. Примечание: Файл CA Bundle считывается на стороне модуля и, возможно, требует явного копирования с контроллера, если он не запущен локально. | |
| aws_config словарь | Словарь для изменения настроек botocore. Параметры можно найти на странице https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config. Для модулей boto используется только ключ 'user_agent'. Для более подробной информации о настройках boto см. http://boto.cloudhackers.com/en/latest/boto_config_tut.html#boto. | |
| aws_secret_key строка | Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. Если задан параметр profile, этот параметр игнорируется. Одновременное использование параметров aws_secret_key и profile устарело и будет сделано взаимоисключающим после 2022-06-01. Псевдонимы: ec2_secret_key, secret_key | |
| debug_botocore_endpoint_logs булево |
| Используйте логгер botocore.endpoint для анализа уникальных (а не всех) API-вызовов «ресурс:действие», сделанных во время задачи, выведя множество в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода полного списка, сделанного во время выполнения книги задач. Переменная среды ANSIBLE_DEBUG_BOTOCORE_LOGS также может быть использована. |
| ec2_url строка | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если таковая есть. Псевдонимы: aws_endpoint_url, endpoint_url | |
| fail_on_delete булево |
| Параметр fail_on_delete ничего не делает и будет удален после 2022-06-01 |
| make_default булево |
| Сделать этот пересмотр основным. |
| only_version булево |
| Удалить все другие не-основные пересмотры, если используется вместе с make_default, это приведет к удалению всех других версий этой политики. |
| policy json | Правильно отформатированная политика в формате json. | |
| policy_description строка | По умолчанию: "" | Полезное описание этой политики. Это значение неизменяемо и устанавливается только при создании новой политики. |
| policy_name строка / требуется | Имя управляемой политики. | |
| profile строка | Использует профиль boto. Работает только с boto >= 2.24.0. Использование profile переопределит aws_access_key, aws_secret_key и security_token, а поддержка их одновременного использования с profile устарела. aws_access_key, aws_secret_key и security_token будут сделаны взаимоисключающими с profile после 2022-06-01. Псевдонимы: aws_profile | |
| region строка | Регион AWS для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если таковая есть. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
Псевдонимы: aws_region, ec2_region | |
| security_token строка | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Если задан параметр profile, этот параметр игнорируется. Одновременное использование параметров security_token и profile устарело и будет сделано взаимоисключающим после 2022-06-01. Псевдонимы: aws_security_token, access_token | |
| state строка |
| Политика должна присутствовать или отсутствовать. Установите значение absent, чтобы отсоединить все сущности от этой политики и удалить ее, если она найдена. |
| validate_certs булево |
| При значении «нет», SSL-сертификаты не будут проверяться для версий boto >= 2.6.0. |
Примечания
Примечание
- Если параметры не заданы в модуле, можно использовать следующие переменные окружения в порядке убывания приоритета
AWS_URLилиEC2_URL,AWS_PROFILEилиAWS_DEFAULT_PROFILE,AWS_ACCESS_KEY_IDилиAWS_ACCESS_KEYилиEC2_ACCESS_KEY,AWS_SECRET_ACCESS_KEYилиAWS_SECRET_KEYилиEC2_SECRET_KEY,AWS_SECURITY_TOKENилиEC2_SECURITY_TOKEN,AWS_REGIONилиEC2_REGION,AWS_CA_BUNDLE. - Ansible использует конфигурационный файл boto (обычно ~/.boto), если учетные данные не предоставлены. См. https://boto.readthedocs.io/en/latest/boto_config_tut.html.
-
AWS_REGIONилиEC2_REGIONобычно используются для указания региона AWS, когда это требуется, но это также можно настроить в файле конфигурации boto.
Примеры
# Create Policy ex nihilo
- name: Create IAM Managed Policy
community.aws.iam_managed_policy:
policy_name: "ManagedPolicy"
policy_description: "A Helpful managed policy"
policy: "{{ lookup('template', 'managed_policy.json.j2') }}"
state: present
# Update a policy with a new default version
- name: Create IAM Managed Policy
community.aws.iam_managed_policy:
policy_name: "ManagedPolicy"
policy: "{{ lookup('file', 'managed_policy_update.json') }}"
state: present
# Update a policy with a new non default version
- name: Create IAM Managed Policy
community.aws.iam_managed_policy:
policy_name: "ManagedPolicy"
policy:
Version: "2012-10-17"
Statement:
- Effect: "Allow"
Action: "logs:CreateLogGroup"
Resource: "*"
make_default: false
state: present
# Update a policy and make it the only version and the default version
- name: Create IAM Managed Policy
community.aws.iam_managed_policy:
policy_name: "ManagedPolicy"
policy: |
{
"Version": "2012-10-17",
"Statement":[{
"Effect": "Allow",
"Action": "logs:PutRetentionPolicy",
"Resource": "*"
}]
}
only_version: true
state: present
# Remove a policy
- name: Create IAM Managed Policy
community.aws.iam_managed_policy:
policy_name: "ManagedPolicy"
state: absent
Возвращаемые значения
Общие возвращаемые значения описаны на странице здесь. Следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| policy строка | успех | Возвращает структуру политики в формате json, когда state == absent, возвращается значение удалённой политики. Пример: { "arn": "arn:aws:iam::aws:policy/AdministratorAccess ", "attachment_count": 0, "create_date": "2017-03-01T15:42:55.981000+00:00", "default_version_id": "v1", "is_attachable": true, "path": "/", "policy_id": "ANPALM4KLDMTFXGOOJIHL", "policy_name": "AdministratorAccess", "update_date": "2017-03-01T15:42:55.981000+00:00" } |
Авторы
- Dan Kozlowski (@dkhenry)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/aws/iam_managed_policy_module.html