Spec-Zone.ru › Ansible

amazon.aws.secretsmanager_secret lookup — поиск секретов, хранящихся в AWS Secrets Manager

Примечание

Этот lookup-плагин входит в коллекцию amazon.aws (версия 11.3.0).

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

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

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

  • Краткое описание
  • Требования
  • Аргументы
  • Параметры ключевых слов
  • Примечания
  • Примеры
  • Возвращаемое значение

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

  • Поиск секретов, хранящихся в AWS Secrets Manager, при наличии у вызывающего соответствующих разрешений на чтение секрета.
  • Поиск выполняется по значению Name секрета.
  • В этот lookup можно передать необязательные параметры: version_id и version_stage.
  • До выпуска версии 6.0.0 этот модуль назывался aws_ssm; способ использования не изменился.

Псевдонимы: aws_secret

Требования

Следующие требования должны быть выполнены на локальном управляющем узле, который выполняет этот lookup.

  • python >= 3.6
  • boto3 >= 1.35.0
  • botocore >= 1.35.0

Аргументы

Параметр

Комментарии

Terms

string / обязательный

Имя секрета для поиска в AWS Secrets Manager.

Параметры ключевых слов

Здесь описаны параметры ключевых слов lookup. В приведённых ниже примерах это значения key1=value1, key2=value2 и так далее: lookup('amazon.aws.secretsmanager_secret', key1=value1, key2=value2, ...) и query('amazon.aws.secretsmanager_secret', key1=value1, key2=value2, ...)

Параметр

Комментарии

access_key

псевдонимы: aws_access_key_id, aws_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 и profile взаимоисключающие.

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

Конфигурация:

  • Переменная среды: AWS_ACCESS_KEY_ID
  • Переменная среды: AWS_ACCESS_KEY

bypath

boolean

добавлено в amazon.aws 1.4.0

Логическое значение, указывающее, передан ли параметр в виде иерархии.

Варианты:

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

endpoint_url

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

string

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

Конфигурация:

  • Переменная среды: AWS_URL

join

boolean

Объединять две или более записи, чтобы сформировать расширенный секрет.

Это помогает обойти ограничение AWS в 4096 символов.

Не влияет на результат при использовании с bypath.

Варианты:

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

nested

boolean

добавлено в amazon.aws 1.4.0

Логическое значение, указывающее, содержит ли секрет вложенные значения.

Варианты:

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

on_deleted

string

добавлено в amazon.aws 2.0.0

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

error вызовет критическую ошибку, если секрет помечен для удаления.

skip проигнорирует удалённый секрет без уведомления.

warn пропустит удалённый секрет и выдаст предупреждение.

Варианты:

  • "error" ← (по умолчанию)
  • "skip"
  • "warn"

on_denied

string

Действие, выполняемое, если доступ к секрету запрещён.

error вызовет критическую ошибку, если доступ к секрету запрещён.

skip проигнорирует секрет с запрещённым доступом без уведомления.

warn пропустит секрет с запрещённым доступом и выдаст предупреждение.

Варианты:

  • "error" ← (по умолчанию)
  • "skip"
  • "warn"

on_missing

string

Действие, выполняемое, если секрет отсутствует.

error вызовет критическую ошибку, если секрет отсутствует.

skip проигнорирует отсутствующий секрет без уведомления.

warn пропустит отсутствующий секрет и выдаст предупреждение.

Варианты:

  • "error" ← (по умолчанию)
  • "skip"
  • "warn"

profile

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

string

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

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

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

Конфигурация:

  • Переменная среды: AWS_PROFILE
  • Переменная среды: AWS_DEFAULT_PROFILE

region

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

string

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

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

Конфигурация:

  • Переменная среды: AWS_REGION

secret_key

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

string

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

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

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

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

Конфигурация:

  • Переменная среды: AWS_SECRET_ACCESS_KEY
  • Переменная среды: AWS_SECRET_KEY

session_token

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

string

Токен сеанса AWS STS для временных учётных данных.

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

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

Конфигурация:

  • Переменная среды: AWS_SESSION_TOKEN

version_id

string

Версия секрета (секретов).

version_stage

string

Этап версии секрета.

Примечание

Для каждого типа записей конфигурации, перечисленных выше (переменная Ansible, переменная среды и так далее), задан порядок приоритета от низкого к высокому. Например, переменная, расположенная ниже в списке, переопределит переменную, расположенную выше. Типы записей также упорядочены по приоритету от низкого к высокому. Например, запись ansible.cfg (расположенная выше в списке) переопределяется переменной Ansible (расположенной ниже в списке).

Примечания

Примечание

  • При совместном использовании параметров ключевых слов и позиционных параметров позиционные параметры должны указываться перед параметрами ключевых слов: lookup('amazon.aws.secretsmanager_secret', term1, term2, key1=value1, key2=value2) и query('amazon.aws.secretsmanager_secret', term1, term2, key1=value1, key2=value2)
  • Внимание: для модулей переменные среды и файлы конфигурации считываются из контекста «узла» Ansible, а не из контекста «контроллера». Поэтому файлы может потребоваться явно скопировать на «узел». Для lookup-плагинов и плагинов подключения переменные среды и файлы конфигурации считываются из контекста «контроллера» Ansible, а не из контекста «узла».
  • Используемый Ansible AWS SDK (boto3) также может считывать значения учётных данных и других параметров по умолчанию, например региона, из файлов конфигурации в контексте «узла» Ansible (обычно ~/.aws/credentials). Дополнительные сведения см. по адресу https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html.

Примеры

- name: Lookup secretsmanager secret in the current region
  ansible.builtin.debug: msg="{{ lookup('amazon.aws.aws_secret', '/path/to/secrets', bypath=true) }}"

- name: Create RDS instance with aws_secret lookup for password param
  amazon.aws.rds_instance:
    state: present
    db_instance_identifier: app-db
    engine: mysql
    instance_type: db.m1.small
    username: dbadmin
    password: "{{ lookup('amazon.aws.aws_secret', 'DbSecret') }}"
    tags:
      Environment: staging

- name: Skip if secret does not exist
  ansible.builtin.debug: msg="{{ lookup('amazon.aws.aws_secret', 'secret-not-exist', on_missing='skip')}}"

- name: Warn if access to the secret is denied
  ansible.builtin.debug: msg="{{ lookup('amazon.aws.aws_secret', 'secret-denied', on_denied='warn')}}"

- name: Lookup secretsmanager secret in the current region using the nested feature
  ansible.builtin.debug: msg="{{ lookup('amazon.aws.aws_secret', 'secrets.environments.production.password', nested=true) }}"
  # The secret can be queried using the following syntax: `aws_secret_object_name.key1.key2.key3`.
  # If an object is of the form `{"key1":{"key2":{"key3":1}}}` the query would return the value `1`.
- name: Lookup secretsmanager secret in a specific region using specified region and aws profile using nested feature
  ansible.builtin.debug: >
   msg="{{ lookup('amazon.aws.aws_secret', 'secrets.environments.production.password', region=region, profile=aws_profile,
   access_key=aws_access_key, secret_key=aws_secret_key, nested=true) }}"
  # The secret can be queried using the following syntax: `aws_secret_object_name.key1.key2.key3`.
  # If an object is of the form `{"key1":{"key2":{"key3":1}}}` the query would return the value `1`.
  # Region is the AWS region where the AWS secret is stored.
  # AWS_profile is the aws profile to use, that has access to the AWS secret.

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

Ключ

Описание

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

string

Возвращает значение секрета, хранящегося в AWS Secrets Manager.

Возвращается: при успешном выполнении

Авторы

  • Aaron Smith

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

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

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

Spec-Zone.ru

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