Spec-Zone.ru › Ansible

amazon.aws.iam_policy модуль – Управление встроенными политиками IAM для пользователей, групп и ролей

Примечание

Этот модуль входит в состав коллекции amazon.aws (версия 8.2.1).

Эта коллекция, возможно, уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install amazon.aws. Для использования этого модуля необходимы дополнительные требования. Подробности см. в разделе Требования.

Для использования в playbook укажите: amazon.aws.iam_policy.

Новое в amazon.aws 5.0.0

  • Описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Описание

  • Позволяет загружать или удалять встроенные политики IAM для пользователей, групп или ролей IAM.
  • Для управления управляемыми политиками обратитесь к community.aws.iam_user, community.aws.iam_role, amazon.aws.iam_group и community.aws.iam_managed_policy.
  • Этот модуль был первоначально добавлен в community.aws в релизе 1.0.0.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • python >= 3.6
  • boto3 >= 1.26.0
  • botocore >= 1.29.0

Параметры

Параметр

Комментарии

access_key

псевдонимы: aws_access_key_id, aws_access_key, ec2_access_key

строка

Идентификатор ключа доступа AWS.

Дополнительную информацию о маркерах доступа см. в документации AWS https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также могут использоваться переменные среды AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY в порядке убывания приоритета.

Параметры aws_access_key и profile взаимоисключающие.

Псевдоним aws_access_key_id добавлен в релизе 5.1.0 для соответствия SDK AWS botocore.

Псевдоним ec2_access_key устарел и будет удалён в релизе после 2024-12-01.

Поддержка переменной среды EC2_ACCESS_KEY устарела и будет удалена в релизе после 2024-12-01.

aws_ca_bundle

путь

Расположение пакета CA для проверки SSL-сертификатов.

Также может использоваться переменная среды AWS_CA_BUNDLE.

aws_config

словарь

Словарь для изменения конфигурации botocore.

Параметры можно найти в документации AWS https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config.

debug_botocore_endpoint_logs

логический тип

Используйте botocore.endpoint логгер для анализа уникальных (а не общих) "resource:action" API-вызовов, сделанных во время задачи, выводя набор в ключ resource_actions в результатах задачи. Используйте aws_resource_action обратный вызов для вывода общего списка, созданного во время выполнения плейбука.

Также может использоваться переменная среды ANSIBLE_DEBUG_BOTOCORE_LOGS.

Варианты:

  • false ← (по умолчанию)
  • true

endpoint_url

псевдонимы: ec2_url, aws_endpoint_url, s3_url

строка

URL для подключения вместо стандартных конечных точек AWS. Хотя это можно использовать для подключения к другим совместимым с AWS службам, коллекции amazon.aws и community.aws протестированы только против AWS.

Также могут использоваться переменные среды AWS_URL или EC2_URL в порядке убывания приоритета.

Псевдонимы ec2_url и s3_url устарели и будут удалены в релизе после 2024-12-01.

Поддержка переменной среды EC2_URL устарела и будет удалена в релизе после 2024-12-01.

iam_name

строка / обязательно

Имя ресурса IAM, на который вы хотите нацелить действия политики. Другими словами, имя пользователя, группы или роли.

iam_type

строка / обязательно

Тип ресурса IAM.

Варианты:

  • "user"
  • "group"
  • "role"

policy_json

json

Политика в формате JSON в виде строки.

policy_name

строка / обязательно

Имя метки политики для создания или удаления.

profile

псевдонимы: aws_profile

строка

Используемый профиль AWS для аутентификации.

Дополнительную информацию о профилях см. в документации AWS https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html.

Также может использоваться переменная среды AWS_PROFILE.

Параметр profile взаимоисключающий с параметрами aws_access_key, aws_secret_key и security_token.

region

псевдонимы: aws_region, ec2_region

строка

Используемый регион AWS.

Для глобальных служб, таких как IAM, Route53 и CloudFront, параметр region игнорируется.

Также могут использоваться переменные среды AWS_REGION или EC2_REGION.

Дополнительную информацию см. в документации Amazon AWS http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region.

Псевдоним ec2_region устарел и будет удален в релизе после 2024-12-01.

Поддержка переменной среды EC2_REGION устарела и будет удалена в релизе после 2024-12-01.

secret_key

псевдонимы: aws_secret_access_key, aws_secret_key, ec2_secret_key

строка

Секретный ключ доступа AWS.

Дополнительную информацию о маркерах доступа см. в документации AWS https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также могут использоваться переменные среды AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY, или EC2_SECRET_KEY в порядке убывания приоритета.

Параметры secret_key и profile взаимоисключающие.

Псевдоним aws_secret_access_key добавлен в релизе 5.1.0 для соответствия SDK AWS botocore.

Псевдоним ec2_secret_key устарел и будет удалён в релизе после 2024-12-01.

Поддержка переменной среды EC2_SECRET_KEY устарела и будет удалена в релизе после 2024-12-01.

session_token

aliases: aws_session_token, security_token, aws_security_token, access_token

строка

Токен сессии AWS STS для использования с временными учетными данными.

См. документацию AWS для получения дополнительной информации об access токенах https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также могут быть использованы переменные среды AWS_SESSION_TOKEN, AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN в порядке убывания приоритета.

Параметры security_token и profile взаимоисключающие.

Псевдонимы aws_session_token и session_token были добавлены в релизе 3.2.0, а параметр был переименован из security_token в session_token в релизе 6.0.0.

Псевдонимы security_token, aws_security_token и access_token устарели и будут удалены в релизе после 01.12.2024.

Поддержка переменных среды EC2_SECRET_KEY и AWS_SECURITY_TOKEN устарела и будет удалена в релизе после 01.12.2024.

skip_duplicates

логическое значение

При skip_duplicates=true модуль ищет политики, соответствующие переданному документу. Если соответствие найдено, новый объект политики с теми же правилами не будет создан.

Варианты:

  • false ← (по умолчанию)
  • true

state

строка

Определение создания или удаления политики IAM.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

validate_certs

логическое значение

При установке в false, сертификаты SSL для связи с API AWS не будут проверены.

Установку validate_certs=false крайне не рекомендуется, в качестве альтернативы рассмотрите настройку aws_ca_bundle вместо этого.

Варианты:

  • false
  • true ← (по умолчанию)

Примечания

Примечание

  • Внимание: Для модулей переменные среды и конфигурационные файлы считываются из контекста хоста Ansible, а не контекста контроллера. Поэтому файлы могут потребоваться явно скопировать на хост. Для плагинов поиска и подключения переменные среды и конфигурационные файлы считываются из контекста контроллера Ansible, а не контекста хоста.
  • AWS SDK (boto3), используемый Ansible, также может считывать значения по умолчанию для учетных данных и других параметров, таких как регион, из своих конфигурационных файлов в контексте хоста Ansible (обычно ~/.aws/credentials). Подробнее см. https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html.

Примеры

# Advanced example, create two new groups and add a READ-ONLY policy to both
# groups.
- name: Create Two Groups, Mario and Luigi
  amazon.aws.iam_group:
    name: "{{ item }}"
    state: present
  loop:
    - Mario
    - Luigi
  register: new_groups

- name: Apply READ-ONLY policy to new groups that have been recently created
  amazon.aws.iam_policy:
    iam_type: group
    iam_name: "{{ item.iam_group.group.group_name }}"
    policy_name: "READ-ONLY"
    policy_json: "{{ lookup('template', 'readonly.json.j2') }}"
    state: present
  loop: "{{ new_groups.results }}"

# Create a new S3 policy with prefix per user
- name: Create S3 policy from template
  amazon.aws.iam_policy:
    iam_type: user
    iam_name: "{{ item.user }}"
    policy_name: "s3_limited_access_{{ item.prefix }}"
    state: present
    policy_json: "{{ lookup('template', 's3_policy.json.j2') }}"
    loop:
      - user: s3_user
        prefix: s3_user_prefix

Значения возврата

Общие значения возврата документированы здесь, следующие поля уникальны для данного модуля:

Ключ

Описание

diff

словарь

Словарь, представляющий разницу между политиками, применяемыми к ресурсу IAM (пользователю, группе или роли).

Возвращается: всегда

after

словарь

Текущая политика ресурса IAM после применения новой политики.

Возвращается: всегда

Пример: {"READ-ONLY": {"Statement": [{"Action": "ec2:DescribeAccountAttributes", "Effect": "Allow", "Resource": "*", "Sid": "VisualEditor0"}], "Version": "2012-10-17"}}

before

словарь

Политика, которая существует на ресурсе IAM перед применением новой политики.

Возвращается: всегда

Пример: {"READ-ONLY": {"Statement": [{"Action": "ec2:DescribeAccountAttributes", "Effect": "Deny", "Resource": "*", "Sid": "VisualEditor0"}], "Version": "2012-10-17"}}

group_name

строка

Имя группы IAM.

Возвращается: когда iam_type=group

Пример: "ExampleGroup001"

policies

список / элементы=строка

Список имен встроенных политик, вложенных в указанный ресурс IAM (пользователь, группа или роль).

Возвращается: всегда

Пример: ["READ-ONLY"]

policy_names

список / элементы=строка

Список имен встроенных политик, вложенных в указанный ресурс IAM (пользователь, группа или роль).

Возвращается: всегда

Пример: ["READ-ONLY"]

role_name

строка

Имя роли IAM.

Возвращается: когда iam_type=role

Пример: "ExampleRole001"

user_name

строка

Имя пользователя IAM.

Возвращается: когда iam_type=user

Пример: "ExampleUser001"

Авторы

  • Jonathan I. Davila (@defionscode)
  • Dennis Podkovyrin (@sbj-ss)

Ссылки на коллекции

  • Система отслеживания ошибок
  • Репозиторий (источники)
  • Общение

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/amazon/aws/iam_policy_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API