community.hashi_vault.vault_token_create lookup — Создание токена 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_token_create.
Добавлено в community.hashi_vault 2.3.0
- Краткое описание
- Требования
- Термины
- Параметры-ключевые слова
- Примечания
- См. также
- Примеры
- Возвращаемое значение
Краткое описание
- Создаёт токен в HashiCorp Vault и возвращает ответ, включая токен.
Требования
Следующие компоненты должны быть установлены на локальном управляющем узле, выполняющем этот плагин поиска.
-
hvac(библиотека Python) - Подробные требования см. на странице требований к коллекции.
Термины
Параметр | Комментарии |
|---|---|
Термины строка | Этот параметр не используется, и любые указанные значения будут проигнорированы. |
Параметры ключевых слов
Здесь описаны параметры ключевых слов для lookup. Это значения key1=value1, key2=value2 и т. д. в следующих примерах: lookup('community.hashi_vault.vault_token_create', key1=value1, key2=value2, ...) и query('community.hashi_vault.vault_token_create', 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 | Для аутентификации Конфигурация:
|
display_name string | Отображаемое имя токена. |
entity_alias string | Имя псевдонима сущности, который будет связан с ней при создании токена. Работает только в сочетании с параметром role_name; используемый псевдоним сущности должен быть указан в Если это значение задано, сущность не будет унаследована от родительской. |
explicit_max_ttl string | Если задано, для токена устанавливается явное максимальное значение TTL. Это максимальное значение TTL токена нельзя изменить позднее; в отличие от обычных токенов, обновления максимального значения TTL системы или точки монтирования не влияют на срок действия при продлении. Токен нельзя будет продлить или использовать после срока, установленного при его выдаче. |
id string | Идентификатор клиентского токена. Может быть задан только корневым токеном. Указанный идентификатор не должен содержать символ В противном случае идентификатор токена будет сгенерирован случайным образом. |
jwt string | JSON Web Token (JWT), используемый для аутентификации в Vault с помощью JWT. Конфигурация:
|
meta dictionary | Словарь с метаданными, в котором строковым ключам соответствуют строковые значения. Передается устройствам аудита. |
mount_point string | Точка монтирования Vault. Если значение не задано, используется точка монтирования по умолчанию для указанного метода аутентификации. Не применяется для аутентификации с помощью токена. Конфигурация:
|
namespace string | Пространство имен Vault, в котором хранятся секреты. Для этого параметра требуются HVAC версии 0.7.0+ и Vault версии 0.11+. Также можно добавить пространство имен в начало пути точки монтирования аутентификации и/или пути секрета (например, Если задана переменная среды Конфигурация:
|
no_default_policy boolean | Если Если этот токен будет использоваться с данной коллекцией, задайте token_validate=false. Варианты:
|
no_parent boolean | Этот параметр действует только при использовании вызывающей стороной Если Варианты:
|
num_uses integer | Максимальное число использований указанного токена. Это можно использовать для создания одноразового токена или токена с ограниченным числом использований. Значение |
orphan boolean | Если При использовании Варианты:
|
password string | Пароль для аутентификации. Конфигурация:
|
period string | Если задано, токен будет периодическим. У него не будет максимального значения TTL (если также не задан параметр explicit_max_ttl), однако при каждом продлении будет использоваться указанный период. Требуется корневой токен или токен с возможностью |
policies list / elements=string | Список политик для токена. Если вызывающий токен не является корневым, список должен быть подмножеством политик, связанных с токеном, выполняющим запрос. Если значение не задано, по умолчанию используются все политики вызывающего токена. |
proxies any добавлено в community.hashi_vault 1.1.0 | URL прокси-серверов, используемых для доступа к службе Vault. Значение может быть строкой или словарем. Если это словарь, укажите схему (например, Если это строка, укажите один URL, который будет использоваться в качестве прокси для схем Строка, которую можно интерпретировать как словарь, будет преобразована в словарь (см. примеры). Для ресурсов HTTP и HTTPS можно указать разные прокси-серверы. Если значение не задано, используются переменные среды из библиотеки Requests. Конфигурация:
|
region string | Регион AWS, для которого создается подключение. Конфигурация:
|
renewable boolean | Установите значение Значение Варианты:
|
retries any добавлено в community.hashi_vault 1.3.0 | Позволяет повторять попытки при возникновении ошибок на основе класса Retry из библиотеки urllib3. Эта коллекция задаёт рекомендуемые значения по умолчанию для повторных подключений к Vault. Эту опцию можно задать положительным числом (целым) или словарём. Если эта опция не задана или число равно Число задаёт общее количество повторных попыток, а для остальных параметров используются значения коллекции по умолчанию. Значение-словарь напрямую используется для инициализации класса Подробные сведения о повторных попытках см. в руководстве пользователя коллекции. Конфигурация:
|
retry_action string добавлено в community.hashi_vault 1.3.0 | Определяет, следует ли выводить сообщения при повторных попытках и каким образом. Не действует, если запрос не выполняется повторно. Варианты:
Конфигурация:
|
role_id string | ID или имя роли Vault. Используется в методах аутентификации Для аутентификации Для аутентификации Конфигурация:
|
role_name string | Имя роли токена. Если этот параметр задан, токен будет создан для указанной роли, настройки которой могут переопределить параметры, заданные при этом вызове. |
secret_id string | Секретный ID для аутентификации в 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 | При аутентификации с помощью токена перед его использованием будет выполнена операция Отключите эту опцию, если у вашего токена отсутствует возможность Варианты:
Конфигурация:
|
ttl string | Период TTL токена, задаваемый в формате Если параметр не задан, токен действителен в течение срока аренды по умолчанию или бессрочно, если используется политика root. |
type string | Тип токена. Значение по умолчанию определяется конфигурацией роли, заданной параметром role_name. Варианты:
|
url string | URL-адрес службы Vault. Если значение не задано другим способом, используется значение переменной окружения Если Конфигурация:
|
username string | Имя пользователя для аутентификации. Конфигурация:
|
validate_certs boolean | Управляет проверкой и подтверждением SSL-сертификатов; обычно отключать её следует только для самоподписанных сертификатов. Если задан параметр Если не заданы ни validate_certs, ни Варианты:
Конфигурация:
|
wrap_ttl string | Задаёт длительность действия токена обёртки ответа. Например: Конфигурация:
|
Примечание
Перечисленные выше записи конфигурации для каждого типа записи (переменная Ansible, переменная окружения и т. д.) упорядочены от низкого приоритета к высокому. Например, переменная, находящаяся ниже в списке, переопределяет переменную, расположенную выше. Типы записей также упорядочены по возрастанию приоритета. Например, запись ansible.cfg (расположенная выше в списке) переопределяется переменной Ansible (расположенной ниже в списке).
Примечания
Примечание
- При совместном использовании именованных и позиционных параметров позиционные параметры необходимо указывать перед именованными:
lookup('community.hashi_vault.vault_token_create', term1, term2, key1=value1, key2=value2)иquery('community.hashi_vault.vault_token_create', term1, term2, key1=value1, key2=value2) - Создание токена — это операция записи (создание токена с сохранением в хранилище), поэтому этот модуль всегда сообщает
changed=True. - Однако в сценариях Ansible может быть полезнее задать changed_when=false, если вы выполняете проверки идемпотентности целевой системы.
- В режиме проверки этот модуль не создаёт токен, а возвращает базовую структуру с пустым токеном. Однако это может быть бесполезно, если токен необходим для последующих задач. Возможно, лучше использовать этот модуль с параметром check_mode=false, чтобы получить действительный токен, который можно использовать.
См. также
См. также
- community.hashi_vault.vault_token_create
-
Создание токена HashiCorp Vault.
- community.hashi_vault.vault_login lookup
-
Официальная документация плагина поиска
community.hashi_vault.vault_login. - community.hashi_vault.vault_login
-
Выполнение операции входа в HashiCorp Vault.
- community.hashi_vault.vault_login_token filter
-
Официальная документация плагина фильтра
community.hashi_vault.vault_login_token.
Примеры
- name: Login via userpass and create a child token
ansible.builtin.set_fact:
token_data: "{{ lookup('community.hashi_vault.vault_token_create', url='https://vault', auth_method='userpass', username=user, password=passwd) }}"
- name: Retrieve an approle role ID using the child token (token via filter)
community.hashi_vault.vault_read:
url: https://vault:8201
auth_method: token
token: '{{ token_data | community.hashi_vault.vault_login_token }}'
path: auth/approle/role/role-name/role-id
register: approle_id
- name: Retrieve an approle role ID (token via direct dict access)
community.hashi_vault.vault_read:
url: https://vault:8201
auth_method: token
token: '{{ token_data.auth.client_token }}'
path: auth/approle/role/role-name/role-id
register: approle_id
# implicitly uses url & token auth with a token from the environment
- name: Create an orphaned token with a short TTL and display the full response
ansible.builtin.debug:
var: lookup('community.hashi_vault.vault_token_create', orphan=True, ttl='60s')
Возвращаемое значение
Ключ | Описание |
|---|---|
Возвращаемое значение dictionary | Результат операции создания токена. Возвращается: успешно Пример: |
|
auth dictionary |
Элемент Возвращается: успешно |
|
client_token string |
Содержит только что созданный токен. Возвращается: успешно |
|
data 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_token_create_lookup.html