Spec-Zone.ru › Ansible 2.10

community.aws.sts_assume_role – Принятие роли с использованием AWS Security Token Service и получение временных учетных данных

Примечание

Этот плагин входит в состав коллекции community.aws (версия 1.3.0).

Для его установки используйте: ansible-galaxy collection install community.aws.

Чтобы использовать его в книге задач, укажите: community.aws.sts_assume_role.

Новое в версии 1.0.0: коллекции community.aws

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

Краткое описание

  • Принятие роли с использованием AWS Security Token Service и получение временных учетных данных.

Требования

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

  • 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 считывается со стороны модуля и может потребоваться его явное копирование с контроллера, если он не выполняется локально.
aws_config
словарь
Словарь для изменения конфигурации botocore.
Параметры можно найти по адресу https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config.
Только ключ 'user_agent' используется для модулей boto. См. http://boto.cloudhackers.com/en/latest/boto_config_tut.html#boto для получения дополнительной информации о конфигурации 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
булево
    Варианты:
  • нет ←
  • да
Используйте logger botocore.endpoint для разбора уникальных (а не общих) API-вызовов «ресурс:действие», выполненных во время задачи, выводя набор в ключ resource_actions в результатах задачи. Используйте обратный вызов aws_resource_action, чтобы вывести полный список, созданный во время выполнения книги задач.
Также может использоваться переменная среды ANSIBLE_DEBUG_BOTOCORE_LOGS.
duration_seconds
целое число
Продолжительность сессии роли в секундах. Значение может варьироваться от 900 секунд (15 минут) до 43200 секунд (12 часов).
Максимальное значение зависит от настроек продолжительности сессий роли IAM.
По умолчанию значение равно 3600 секундам.
ec2_url
строка
URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где регион необходим. Должен быть указан для всех остальных модулей, если регион не используется. Если не указано, используется значение переменной среды EC2_URL.

псевдонимы: aws_endpoint_url, endpoint_url
external_id
строка
Уникальный идентификатор, используемый третьими сторонами для принятия роли в учетных записях своих клиентов.
mfa_serial_number
строка
Идентификационный номер устройства MFA, связанного с пользователем, выполняющим вызов AssumeRole.
mfa_token
строка
Значение, предоставленное устройством MFA, если политика доверия принимаемой роли требует MFA.
policy
строка
Дополнительная политика для использования дополнительно к политикам принимаемой роли.
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
role_arn
строка / обязательно
Amazon Resource Name (ARN) роли, которую вызывающий элемент пытается принять https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html#Identifiers_ARNs.
role_session_name
строка / обязательно
Имя сессии роли — будет использоваться CloudTrail.
security_token
строка
Токен безопасности AWS STS. Если не задано, используется значение переменной среды AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN.
Если задан параметр profile, этот параметр игнорируется.
Одновременное указание параметров security_token и profile устарело и будет исключено после 2022-06-01.

псевдонимы: aws_security_token, access_token
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

Примеры

# Note: These examples do not set authentication details, see the AWS Guide for details.

# Assume an existing role (more details: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)
- community.aws.sts_assume_role:
    role_arn: "arn:aws:iam::123456789012:role/someRole"
    role_session_name: "someRoleSession"
  register: assumed_role

# Use the assumed role above to tag an instance in account 123456789012
- amazon.aws.ec2_tag:
    aws_access_key: "{{ assumed_role.sts_creds.access_key }}"
    aws_secret_key: "{{ assumed_role.sts_creds.secret_key }}"
    security_token: "{{ assumed_role.sts_creds.session_token }}"
    resource: i-xyzxyz01
    state: present
    tags:
      MyNewTag: value

Возвращаемые значения

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

Ключ Возвращаемое значение Описание
changed
булево
всегда
True, если получение учетных данных успешно

sts_creds
словарь
всегда
Временные учетные данные безопасности, включающие идентификатор ключа доступа, секретный ключ доступа и токен безопасности (или сессии)

Пример:
{'access_key': 'XXXXXXXXXXXXXXXXXXXX', 'expiration': '2017-11-11T11:11:11+00:00', 'secret_key': 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', 'session_token': 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'}
sts_user
словарь
всегда
Amazon Resource Name (ARN) и идентификатор принятой роли

Пример:
{'arn': 'ARO123EXAMPLE123:Bob', 'assumed_role_id': 'arn:aws:sts::123456789012:assumed-role/demo/Bob'}


Авторы

  • Boris Ekelchik (@bekelchik)
  • Marek Piatek (@piontas)

© 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/sts_assume_role_module.html

Spec-Zone.ru

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