Spec-Zone.ru › Ansible

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

Примечание

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

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

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

Чтобы использовать его в playbook, укажите: amazon.aws.sts_assume_role.

Добавлена в community.aws 1.0.0

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

Описание

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

Требования

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

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

Параметры

Параметр

Комментарии

access_key

aliases: aws_access_key_id, aws_access_key, ec2_access_key

string

Идентификатор ключа доступа 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

path

Расположение пакета CA, используемого при проверке SSL-сертификатов.

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

aws_config

dictionary

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

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

debug_botocore_endpoint_logs

boolean

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

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

Варианты:

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

duration_seconds

integer

Длительность, в секундах, сессии роли. Значение может варьироваться от 900 секунд (15 минут) до 43200 секунд (12 часов).

Максимальное значение зависит от настройки длительности сессии роли IAM.

По умолчанию значение установлено на 3600 секунд.

endpoint_url

aliases: ec2_url, aws_endpoint_url, s3_url

string

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

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

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

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

external_id

string

Уникальный идентификатор, используемый третьими сторонами для принятия роли в учетных записях своих клиентов.

mfa_serial_number

string

Идентификационный номер устройства MFA, связанного с пользователем, выполняющим вызов AssumeRole.

mfa_token

string

Значение, предоставленное устройством MFA, если политика доверия принимаемой роли требует MFA.

policy

string

Дополнительная политика для использования в дополнение к политикам принятой роли.

profile

aliases: aws_profile

string

Именованный профиль 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

aliases: aws_region, ec2_region

string

Регион 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.

role_arn

string / required

Универсальное имя ресурса (ARN) роли, которую вызывающий принимает https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html#Identifiers_ARNs.

role_session_name

string / required

Имя сессии роли — будет использоваться CloudTrail.

secret_key

aliases: aws_secret_access_key, aws_secret_key, ec2_secret_key

string

Секретный ключ доступа 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

string

Токен сессии 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, 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 устарели и будут удалены в релизе после 2024-12-01.

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

validate_certs

boolean

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

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

Варианты:

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

Примечания

Примечание

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

Примеры

# Assume an existing role (more details: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)
- amazon.aws.sts_assume_role:
    access_key: AKIA1EXAMPLE1EXAMPLE
    secret_key: 123456789abcdefghijklmnopqrstuvwxyzABCDE
    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:
    access_key: "{{ assumed_role.sts_creds.access_key }}"
    secret_key: "{{ assumed_role.sts_creds.secret_key }}"
    session_token: "{{ assumed_role.sts_creds.session_token }}"
    resource: i-xyzxyz01
    state: present
    tags:
      MyNewTag: value

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

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

Ключ

Описание

changed

boolean

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"}

Авторы

  • Борис Екельчик (@bekelchik)
  • Марек Пиатек (@piontas)

Ссылки на сборку

  • Система отслеживания ошибок
  • Репозиторий (Исходный код)
  • Связь

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

Spec-Zone.ru

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