lookup community.hashi_vault.vault_kv2_get — получение секрета из хранилища секретов KV версии 2 HashiCorp Vault
Примечание
Этот плагин поиска входит в коллекцию community.hashi_vault (версия 7.1.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install community.hashi_vault. Для использования этого плагина поиска требуются дополнительные компоненты; подробности см. в разделе Требования.
Чтобы использовать его в плейбуке, укажите: community.hashi_vault.vault_kv2_get.
Новое в community.hashi_vault 2.5.0
- Краткое описание
- Требования
- Термины
- Именованные параметры
- Примечания
- См. также
- Примеры
- Возвращаемое значение
Краткое описание
- Получает секрет из хранилища секретов KV версии 2 HashiCorp Vault.
Требования
Следующие компоненты должны быть установлены на локальном узле контроллера, который выполняет этот поиск.
-
hvac(библиотека Python) - Подробные сведения о требованиях см. на странице требований к коллекции.
Термины
Параметр | Комментарии |
|---|---|
Термины строка / обязательный | Путь или пути к хранилищу KV, которые нужно прочитать. Это пути относительно engine_mount_point, поэтому путь монтирования указывать не следует. |
Параметры ключевых слов
Здесь описаны параметры ключевых слов для поиска. Это значения key1=value1, key2=value2 и т. д. в следующих примерах: lookup('community.hashi_vault.vault_kv2_get', key1=value1, key2=value2, ...) и query('community.hashi_vault.vault_kv2_get', key1=value1, key2=value2, ...)
Параметр | Комментарии |
|---|---|
auth_method string | Используемый метод аутентификации. Метод аутентификации Метод аутентификации
Метод аутентификации Метод аутентификации Варианты:
Конфигурация:
|
aws_access_key псевдонимы: aws_access_key_id string | Используемый ключ доступа AWS. Конфигурация:
|
aws_iam_server_id string добавлено в community.hashi_vault 0.2.0 | Если указано, задает значение для заголовка Конфигурация:
|
aws_profile псевдонимы: boto_profile string | |
aws_secret_key псевдонимы: aws_secret_access_key string | Секретный ключ AWS, соответствующий ключу доступа. Конфигурация:
|
aws_security_token string | Токен безопасности AWS при использовании временных ключей доступа и секретных ключей. Конфигурация:
|
azure_client_id string добавлено в community.hashi_vault 3.2.0 | Идентификатор клиента (также известный как идентификатор приложения) субъекта-службы Azure AD или управляемого удостоверения. Должен быть UUID. Если не указано, будет использоваться управляемое удостоверение, назначенное системой. Конфигурация:
|
azure_client_secret string добавлено в community.hashi_vault 3.2.0 | Секрет клиента субъекта-службы Azure AD. Конфигурация:
|
azure_resource string добавлено в community.hashi_vault 3.2.0 | URL ресурса для приложения, зарегистрированного в Azure Active Directory. Обычно не следует изменять значение по умолчанию. По умолчанию: Конфигурация:
|
azure_tenant_id string добавлено в community.hashi_vault 3.2.0 | Идентификатор клиента Azure Active Directory (также известный как идентификатор каталога) субъекта-службы. Должен быть UUID. Обязателен при использовании субъекта-службы для аутентификации в Vault, например, когда указаны и azure_client_id, и azure_client_secret. Необязателен при использовании управляемого удостоверения для аутентификации в Vault. Конфигурация:
|
ca_cert псевдонимы: cacert string | Путь к сертификату, используемому для аутентификации. Если значение не указано каким-либо другим способом, будет использоваться переменная среды Конфигурация:
|
cert_auth_private_key path добавлено в community.hashi_vault 1.4.0 | Для аутентификации Конфигурация:
|
cert_auth_public_key path добавлено в community.hashi_vault 1.4.0 | Для аутентификации Конфигурация:
|
engine_mount_point string | Путь, по которому подключен сервер секретов. По умолчанию: Конфигурация:
|
jwt string | JSON Web Token (JWT), используемый для аутентификации в Vault с помощью JWT. Конфигурация:
|
mount_point string | Точка монтирования Vault. Если не указана, используется точка монтирования по умолчанию для соответствующего метода аутентификации. Не применяется для аутентификации с помощью токена. Конфигурация:
|
namespace string | Пространство имен Vault, в котором хранятся секреты. Для этого параметра требуются HVAC 0.7.0+ и Vault 0.11+. Также можно добавить пространство имен в начало пути точки монтирования аутентификации и/или пути секрета (например, Если задана переменная среды Конфигурация:
|
password string | Пароль для аутентификации. Конфигурация:
|
proxies any добавлено в community.hashi_vault 1.1.0 | URL-адрес(а) прокси-серверов, используемых для доступа к службе Vault. Значением может быть строка или словарь. Если указано значение типа «словарь», задайте схему (например, Если указана строка, задайте один URL-адрес, который будет использоваться в качестве прокси для схем Строка, которую можно интерпретировать как словарь, будет преобразована в словарь (см. примеры). Можно указать разные прокси для ресурсов HTTP и HTTPS. Если значение не указано, используются переменные среды библиотеки Requests. Конфигурация:
|
region string | Регион AWS, для которого создается подключение. Конфигурация:
|
retries any добавлено в community.hashi_vault 1.3.0 | Позволяет повторять запросы при ошибках на основе класса Retry из библиотеки urllib3. В этой коллекции заданы рекомендуемые значения по умолчанию для повторных подключений к Vault. Этот параметр можно указать в виде положительного числа (целого) или словаря. Если этот параметр не задан или число равно Число задает общее количество повторных попыток; для остальных настроек используются значения коллекции по умолчанию. Значение-словарь напрямую используется для инициализации класса Подробные сведения о повторных попытках см. в руководстве пользователя коллекции. Конфигурация:
|
retry_action string добавлено в community.hashi_vault 1.3.0 | Определяет, показывать ли сообщения о повторных попытках и каким образом. Не влияет на запросы, для которых не выполняются повторные попытки. Варианты:
Конфигурация:
|
role_id string | Идентификатор или имя роли Vault. Используется в методах аутентификации Для аутентификации Для аутентификации Конфигурация:
|
secret_id string | Идентификатор секрета для аутентификации в Vault с помощью AppRole. Конфигурация:
|
timeout integer добавлено в community.hashi_vault 1.3.0 | Задает время ожидания подключения в секундах. Если не задано, используется значение по умолчанию библиотеки Конфигурация:
|
token string | Токен Vault. Токен можно указать явно, через перечисленные переменные [env], а также через переменную среды Если токен не указан явно или через переменные среды, плагин проверит наличие файла токена, определяемого параметрами token_path и token_file. Порядок загрузки токена (используется первое найденное значение): Конфигурация:
|
token_file string | Если токен не указан, будет предпринята попытка прочитать его из этого файла в token_path. По умолчанию: Конфигурация:
|
token_path string | Если токен не указан, будет предпринята попытка прочитать token_file по этому пути. Конфигурация:
|
token_validate boolean добавлено в community.hashi_vault 0.2.0 | При аутентификации с помощью токена перед его использованием будет выполнена операция Отключите эту функцию, если у вашего токена нет возможности Варианты:
Конфигурация:
|
url string | URL-адрес службы Vault. Если значение не задано другим способом, будет использоваться значение переменной окружения Если Конфигурация:
|
username string | Имя пользователя для аутентификации. Конфигурация:
|
validate_certs boolean | Управляет проверкой и подтверждением подлинности SSL-сертификатов; отключать эту функцию обычно следует только для самоподписанных сертификатов. Будет задано значение, обратное По умолчанию будет установлено значение Варианты:
Конфигурация:
|
version integer | Указывает возвращаемую версию. Если значение не задано, возвращается последняя версия. |
Примечание
Записи конфигурации, перечисленные выше для каждого типа записи (переменная Ansible, переменная окружения и т. д.), упорядочены от низкого приоритета к высокому. Например, переменная, расположенная ниже в списке, переопределит переменную, расположенную выше. Типы записей также упорядочены от низкого приоритета к высокому. Например, запись ansible.cfg (расположенная выше в списке) переопределяется переменной Ansible (расположенной ниже в списке).
Примечания
Примечание
- При совместном использовании параметров по ключевым словам и позиционных параметров позиционные параметры необходимо указывать перед параметрами по ключевым словам:
lookup('community.hashi_vault.vault_kv2_get', term1, term2, key1=value1, key2=value2)иquery('community.hashi_vault.vault_kv2_get', term1, term2, key1=value1, key2=value2)
См. также
См. также
- community.hashi_vault.vault_kv2_get
-
Получение секрета из хранилища секретов KV версии 2 в HashiCorp Vault.
- lookup community.hashi_vault.vault_kv1_get
-
Официальная документация по плагину lookup
community.hashi_vault.vault_kv1_get. - community.hashi_vault.vault_kv1_get
-
Получение секрета из хранилища секретов KV версии 1 в HashiCorp Vault.
- Руководство по lookup community.hashi_vault
-
Рекомендации по использованию lookup в
community.hashi_vault. - Механизм секретов KV2
-
Документация по механизму секретов KV в Vault, версия 2.
Примеры
- name: Read a kv2 secret with the default mount point
ansible.builtin.set_fact:
response: "{{ lookup('community.hashi_vault.vault_kv2_get', 'hello', url='https://vault:8201') }}"
# equivalent API path in 3.x.x is kv/data/hello
# equivalent API path in 4.0.0+ is secret/data/hello
- name: Display the results
ansible.builtin.debug:
msg:
- "Secret: {{ response.secret }}"
- "Data: {{ response.data }} (contains secret data & metadata in kv2)"
- "Metadata: {{ response.metadata }}"
- "Full response: {{ response.raw }}"
- "Value of key 'password' in the secret: {{ response.secret.password }}"
- name: Read version 5 of a kv2 secret with a different mount point
ansible.builtin.set_fact:
response: "{{ lookup('community.hashi_vault.vault_kv2_get', 'hello', version=5, engine_mount_point='custom/kv2/mount', url='https://vault:8201') }}"
# equivalent API path is custom/kv2/mount/data/hello
- name: Assert that the version returned is as expected
ansible.builtin.assert:
that:
- response.metadata.version == 5
- name: Perform multiple kv2 reads with a single Vault login, showing the secrets
vars:
paths:
- hello
- my-secret/one
- my-secret/two
ansible.builtin.debug:
msg: "{{ lookup('community.hashi_vault.vault_kv2_get', *paths, auth_method='userpass', username=user, password=pwd)['secret'] }}"
- name: Perform multiple kv2 reads with a single Vault login in a loop
vars:
paths:
- hello
- my-secret/one
- my-secret/two
ansible.builtin.debug:
msg: '{{ item }}'
loop: "{{ query('community.hashi_vault.vault_kv2_get', *paths, auth_method='userpass', username=user, password=pwd) }}"
- name: Perform multiple kv2 reads with a single Vault login in a loop (via with_), display values only
vars:
ansible_hashi_vault_auth_method: userpass
ansible_hashi_vault_username: '{{ user }}'
ansible_hashi_vault_password: '{{ pwd }}'
ansible_hashi_vault_engine_mount_point: special/kv2
ansible.builtin.debug:
msg: '{{ item.values() | list }}'
with_community.hashi_vault.vault_kv2_get:
- hello
- my-secret/one
- my-secret/two
Возвращаемое значение
Ключ | Описание |
|---|---|
Возвращаемое значение list / elements=dictionary | Результат чтения по указанному пути или путям. Возвращается: при успешном выполнении |
|
data dictionary |
Поле Возвращается: при успешном выполнении Пример: |
|
metadata dictionary |
Поле Возвращается: при успешном выполнении Пример: |
|
raw dictionary |
Необработанный результат чтения по указанному пути. Возвращается: при успешном выполнении Пример: |
|
secret dictionary |
Поле Возвращается: при успешном выполнении Пример: |
Ссылки на коллекцию
© 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/community/hashi_vault/vault_kv2_get_lookup.html