Spec-Zone.ru › Ansible 2.8

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

Новая версия 2.0.

  • Описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Статус

Описание

  • Позволяет загружать или удалять политики IAM для пользователей, групп или ролей IAM.

Требования

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

  • python >= 2.6
  • boto

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
aws_access_key
строка
Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY.

псевдонимы: ec2_access_key, access_key
aws_secret_key
строка
Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY.

псевдонимы: ec2_secret_key, secret_key
debug_botocore_endpoint_logs
булево
добавлено в 2.8
    Варианты:
  • нет ←
  • да
Использование логгера botocore.endpoint для анализа уникальных (а не общих) API-вызовов "resource:action" во время задачи, вывод набора в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода общего списка, созданного во время выполнения игры.
ec2_url
строка
URL для подключения к облаку EC2 или Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется в модулях, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если таковое имеется.
iam_name
- / обязательно
Имя ресурса IAM, на который должны быть направлены действия с политикой. То есть имя пользователя, группы или роли.
iam_type
- / обязательно
    Варианты:
  • пользователь
  • группа
  • роль
Тип ресурса IAM
policy_document
-
Путь к файлу политики в формате JSON (исключительно с policy_json)
policy_json
-
Политика в формате JSON как строка (исключительно с policy_document, см. https://github.com/ansible/ansible/issues/7005#issuecomment-42894813 для правильного использования)
policy_name
- / обязательно
Метка имени политики для создания или удаления.
profile
строка
Использует профиль boto. Работает только с boto >= 2.24.0.
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.

псевдонимы: access_token
skip_duplicates
-
По умолчанию:
"/"
По умолчанию модуль ищет любые политики, соответствующие переданному документу. Если совпадение найдено, новая политика с теми же правилами не создается. Можно переопределить, указав false, что позволит двум политикам с разными именами, но одинаковыми правилами.
state
- / обязательно
    Варианты:
  • present
  • absent
Создать или удалить политику IAM.
validate_certs
булево
    Варианты:
  • нет
  • да ←
При значении "нет", сертификаты SSL не будут проверятся для boto версий >= 2.6.0.

Примечания

Примечание

  • В настоящее время boto не поддерживает удаление управляемых политик, модуль не будет работать с удалением/добавлением управляемых политик.
  • Если параметры не заданы в модуле, можно использовать следующие переменные окружения в порядке убывания приоритета AWS_URL или EC2_URL, 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.
  • Ansible использует файл конфигурации boto (обычно ~/.boto), если учетные данные не предоставлены. См. https://boto.readthedocs.io/en/latest/boto_config_tut.html
  • AWS_REGION или EC2_REGION обычно используются для указания AWS региона, когда это необходимо, но это также можно настроить в файле конфигурации boto

Примеры

# Create a policy with the name of 'Admin' to the group 'administrators'
- name: Assign a policy called Admin to the administrators group
  iam_policy:
    iam_type: group
    iam_name: administrators
    policy_name: Admin
    state: present
    policy_document: admin_policy.json

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

- name: Apply READ-ONLY policy to new groups that have been recently created
  iam_policy:
    iam_type: group
    iam_name: "{{ item.created_group.group_name }}"
    policy_name: "READ-ONLY"
    policy_document: readonlypolicy.json
    state: present
  loop: "{{ new_groups.results }}"

# Create a new S3 policy with prefix per user
- name: Create S3 policy from template
  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

Статус

  • Этот модуль гарантированно не будет иметь обратной несовместимости в будущих изменениях. [stableinterface]
  • Этот модуль поддерживается сообществом Ansible. [community]

Авторы

  • Jonathan I. Davila (@defionscode)

Подсказка

Если вы заметили какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/iam_policy_module.html

Spec-Zone.ru

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