Spec-Zone.ru › Ansible

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

Примечание

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

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

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

Чтобы использовать модуль в плейбуке, укажите: 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.35.0
  • botocore >= 1.35.0

Параметры

Параметр

Комментарии

access_key

псевдонимы: aws_access_key_id, aws_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 в порядке убывания приоритета.

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

Псевдоним aws_access_key_id добавлен в выпуске 5.1.0 для согласованности с AWS SDK botocore.

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 для анализа уникальных (а не общего числа) вызовов API "resource:action", выполненных во время задачи, и записывать их набор в ключ resource_actions результатов задачи. Используйте callback aws_resource_action, чтобы вывести полный список вызовов, выполненных в ходе плейбука.

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

Варианты:

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

endpoint_url

псевдоним: aws_endpoint_url

строка

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

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

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 и session_token.

region

псевдоним: aws_region

строка

Регион AWS, который нужно использовать.

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

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

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

secret_key

псевдонимы: aws_secret_access_key, aws_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 в порядке убывания приоритета.

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

Псевдоним aws_secret_access_key добавлен в выпуске 5.1.0 для согласованности с AWS SDK botocore.

session_token

псевдоним: aws_session_token

строка

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

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

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

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

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, а не из контекста «узла».
  • Используемый Ansible AWS SDK (boto3) также может считывать значения по умолчанию для учетных данных и других параметров, например региона, из файлов конфигурации в контексте «узла» 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"

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–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/amazon/aws/iam_policy_module.html

Spec-Zone.ru

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