Spec-Zone.ru › Ansible

community.hashi_vault.vault_read lookup – Выполнение операции чтения в HashiCorp Vault

Примечание

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

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

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

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

Добавлена в community.hashi_vault 1.4.0

  • Обзор
  • Требования
  • Термины
  • Параметры ключевых слов
  • Примечания
  • См. также
  • Примеры
  • Возвращаемое значение

Обзор

  • Выполняет общую операцию чтения заданного пути в HashiCorp Vault.

Требования

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

  • hvac (Библиотека Python)
  • Подробные требования см. на странице требований коллекции: страница требований коллекции.

Термины

Параметр

Комментарии

Термины

строка / обязательно

Путь(и) Vault для чтения.

Ключевые параметры

Это описывает ключевые параметры поиска. Это значения key1=value1, key2=value2 и так далее в следующих примерах: lookup('community.hashi_vault.vault_read', key1=value1, key2=value2, ...) и query('community.hashi_vault.vault_read', key1=value1, key2=value2, ...)

Параметр

Комментарии

auth_method

строка

Метод аутентификации, который будет использоваться.

none метод аутентификации был добавлен в версии коллекции 1.2.0.

cert метод аутентификации был добавлен в версии коллекции 1.4.0.

aws_iam_login был переименован в aws_iam в версии коллекции 2.1.0 и был удален в 3.0.0.

azure метод аутентификации был добавлен в версии коллекции 3.2.0.

Варианты:

  • "token" ← (по умолчанию)
  • "userpass"
  • "ldap"
  • "approle"
  • "aws_iam"
  • "azure"
  • "jwt"
  • "cert"
  • "none"

Настройка:

  • Запись INI:

    [hashi_vault_collection]
    auth_method = token
    

    добавлен в community.hashi_vault 1.4.0

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

    добавлен в community.hashi_vault 0.2.0

  • Переменная: ansible_hashi_vault_auth_method

    добавлен в community.hashi_vault 1.2.0

aws_access_key

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

строка

Ключ доступа AWS для использования.

Настройка:

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

aws_iam_server_id

строка

добавлен в community.hashi_vault 0.2.0

При указании устанавливает значение для заголовка X-Vault-AWS-IAM-Server-ID в рамках запроса GetCallerIdentity.

Настройка:

  • Запись INI:

    [hashi_vault_collection]
    aws_iam_server_id = VALUE
    

    добавлен в community.hashi_vault 1.4.0

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

aws_profile

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

строка

Профиль AWS

Настройка:

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

aws_secret_key

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

строка

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

Настройка:

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

aws_security_token

строка

Токен безопасности AWS, если используется временный доступ и секретные ключи.

Настройка:

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

azure_client_id

строка

добавлен в community.hashi_vault 3.2.0

Идентификатор клиента (также известный как идентификатор приложения) принципала службы Azure AD или управляемой учетной записи. Должен быть UUID.

Если не указано, будет использоваться управляемая учетная запись.

Настройка:

  • Запись INI:

    [hashi_vault_collection]
    azure_client_id = VALUE
    
  • Переменная среды: ANSIBLE_HASHI_VAULT_AZURE_CLIENT_ID
  • Переменная: ansible_hashi_vault_azure_client_id

azure_client_secret

строка

добавлен в community.hashi_vault 3.2.0

Секретный ключ клиента принципала службы Azure AD.

Настройка:

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

azure_resource

строка

добавлен в community.hashi_vault 3.2.0

URL ресурса для приложения, зарегистрированного в Azure Active Directory. Обычно не следует изменять по умолчанию.

По умолчанию: "https://management.azure.com/"

Настройка:

  • Запись INI:

    [hashi_vault_collection]
    azure_resource = https://management.azure.com/
    
  • Переменная среды: ANSIBLE_HASHI_VAULT_AZURE_RESOURCE
  • Переменная: ansible_hashi_vault_azure_resource
END_OF_DOCUMENT_MARKER

azure_tenant_id

string

added in community.hashi_vault 3.2.0

Идентификатор клиента Azure Active Directory (также известный как идентификатор каталога) для субъекта безопасности. Должен быть UUID.

Требуется при использовании субъекта безопасности для аутентификации в Vault, например, если указаны как azure_client_id, так и azure_client_secret.

Необязательно при использовании управляемой идентичности для аутентификации в Vault.

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

  • Запись INI:

    [hashi_vault_collection]
    azure_tenant_id = VALUE
    
  • Переменная среды: ANSIBLE_HASHI_VAULT_AZURE_TENANT_ID
  • Переменная: ansible_hashi_vault_azure_tenant_id

ca_cert

aliases: cacert

string

Путь к сертификату, используемому для аутентификации.

Если не указан иным способом, будет использоваться переменная среды VAULT_CACERT.

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

  • Запись INI:

    [hashi_vault_collection]
    ca_cert = VALUE
    

    added in community.hashi_vault 1.4.0

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

    added in community.hashi_vault 1.2.0

  • Переменная: ansible_hashi_vault_ca_cert

    added in community.hashi_vault 1.2.0

cert_auth_private_key

path

added in community.hashi_vault 1.4.0

Для cert аутентификации, путь к файлу с закрытым ключом для аутентификации в формате PEM.

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

  • Запись INI:

    [hashi_vault_collection]
    cert_auth_private_key = VALUE
    
  • Переменная среды: ANSIBLE_HASHI_VAULT_CERT_AUTH_PRIVATE_KEY
  • Переменная: ansible_hashi_vault_cert_auth_private_key

    added in community.hashi_vault 6.2.0

cert_auth_public_key

path

added in community.hashi_vault 1.4.0

Для cert аутентификации, путь к файлу с сертификатом для аутентификации в формате PEM.

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

  • Запись INI:

    [hashi_vault_collection]
    cert_auth_public_key = VALUE
    
  • Переменная среды: ANSIBLE_HASHI_VAULT_CERT_AUTH_PUBLIC_KEY
  • Переменная: ansible_hashi_vault_cert_auth_public_key

    added in community.hashi_vault 6.2.0

jwt

string

JSON Web Token (JWT), используемый для JWT-аутентификации в Vault.

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

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

mount_point

string

Точка монтирования Vault.

Если не указано, используется точка монтирования по умолчанию для данного метода аутентификации.

Не применяется к токенной аутентификации.

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

  • Запись INI:

    [hashi_vault_collection]
    mount_point = VALUE
    

    added in community.hashi_vault 1.5.0

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

    added in community.hashi_vault 1.5.0

  • Переменная: ansible_hashi_vault_mount_point

    added in community.hashi_vault 1.5.0

namespace

string

Пространство имен Vault, где находятся секреты. Эта опция требует HVAC 0.7.0+ и Vault 0.11+.

Дополнительно, это может быть достигнуто путем добавления префикса к точке монтирования аутентификации и/или пути к секрету с пространством имен (например mynamespace/secret/mysecret).

Если установлена переменная среды VAULT_NAMESPACE, ее значение будет использоваться последним среди всех способов задания namespace.

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

  • Запись INI:

    [hashi_vault_collection]
    namespace = VALUE
    

    added in community.hashi_vault 1.4.0

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

    added in community.hashi_vault 0.2.0

  • Переменная: ansible_hashi_vault_namespace

    added in community.hashi_vault 1.2.0

password

string

Пароль для аутентификации.

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

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

    added in community.hashi_vault 1.2.0

  • Переменная: ansible_hashi_vault_password

    added in community.hashi_vault 1.2.0

proxies

any

added in community.hashi_vault 1.1.0

URL(ы) прокси-сервера(ов), используемых для доступа к сервису Vault.

Может быть строкой или словарем.

Если это словарь, укажите схему (например, http или https) в качестве ключа и URL в качестве значения.

Если это строка, укажите один URL, который будет использоваться в качестве прокси для схем http и https.

Строка, которая может быть интерпретирована как словарь, будет преобразована в словарь (см. примеры).

Вы можете указать разные прокси для ресурсов HTTP и HTTPS.

Если не указано, используются переменные среды из библиотеки Requests.

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

  • Запись INI:

    [hashi_vault_collection]
    proxies = VALUE
    

    added in community.hashi_vault 1.4.0

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

    added in community.hashi_vault 1.2.0

region

string

Регион AWS, для которого необходимо создать подключение.

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

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

повторные попытки

любой

добавлено в community.hashi_vault 1.3.0

Позволяет повторно пытаться выполнить операцию в случае ошибок, основываясь на классе Retry в библиотеке urllib3.

Данный набор определяет рекомендуемые значения по умолчанию для повторных подключений к Vault.

Этот параметр может быть задан как положительное число (целое) или словарь.

Если этот параметр не указан или число равно 0, повторные попытки отключены.

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

Значение в виде словаря используется напрямую для инициализации класса Retry, что позволяет настроить повторные попытки полностью.

Более подробная информация о повторных попытках приведена в руководстве пользователя данного набора.

Настройка:

  • Запись в INI:

    [hashi_vault_collection]
    retries = VALUE
    

    добавлено в community.hashi_vault 1.4.0

  • Переменная окружения: ANSIBLE_HASHI_VAULT_RETRIES
  • Переменная: ansible_hashi_vault_retries

действие_повторных_попыток

строка

добавлено в community.hashi_vault 1.3.0

Управляет отображением сообщений во время повторных попыток.

Это не оказывает влияния, если запрос не повторяется.

Возможные значения:

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

Настройка:

  • Запись в INI:

    [hashi_vault_collection]
    retry_action = warn
    

    добавлено в community.hashi_vault 1.4.0

  • Переменная окружения: ANSIBLE_HASHI_VAULT_RETRY_ACTION
  • Переменная: ansible_hashi_vault_retry_action

id_роли

строка

Идентификатор или имя роли Vault. Используется в approle, aws_iam, azure и cert методах аутентификации.

Для метода аутентификации cert, если id_роли не указан, то происходит попытка использовать все роли сертификатов и возвращается любая подходящая роль.

Для метода аутентификации azure, id_роли обязателен.

Настройка:

  • Запись в INI:

    [hashi_vault_collection]
    role_id = VALUE
    

    добавлено в community.hashi_vault 1.4.0

  • Переменная окружения: ANSIBLE_HASHI_VAULT_ROLE_ID

    добавлено в community.hashi_vault 0.2.0

  • Переменная: ansible_hashi_vault_role_id

    добавлено в community.hashi_vault 1.2.0

id_секрета

строка

Идентификатор секрета для аутентификации Vault с помощью AppRole.

Настройка:

  • Переменная окружения: ANSIBLE_HASHI_VAULT_SECRET_ID

    добавлено в community.hashi_vault 0.2.0

  • Переменная: ansible_hashi_vault_secret_id

    добавлено в community.hashi_vault 1.2.0

таймаут

целое число

добавлено в community.hashi_vault 1.3.0

Устанавливает таймаут подключения в секундах.

Если не задано, используется значение по умолчанию библиотеки hvac.

Настройка:

  • Запись в INI:

    [hashi_vault_collection]
    timeout = VALUE
    

    добавлено в community.hashi_vault 1.4.0

  • Переменная окружения: ANSIBLE_HASHI_VAULT_TIMEOUT
  • Переменная: ansible_hashi_vault_timeout

токен

строка

Токен Vault. Токен может быть задан явно, через указанные переменные [env] и также через переменную окружения VAULT_TOKEN.

Если токен не указан, явно или через переменные окружения, то плагин будет проверять файл токена, как определено параметрами token_path и token_file.

Порядок загрузки токенов (первый найденный имеет приоритет) token param -> ansible var -> ANSIBLE_HASHI_VAULT_TOKEN -> VAULT_TOKEN -> token file.

Настройка:

  • Переменная окружения: ANSIBLE_HASHI_VAULT_TOKEN

    добавлено в community.hashi_vault 0.2.0

  • Переменная: ansible_hashi_vault_token

    добавлено в community.hashi_vault 1.2.0

файл_токена

строка

Если токен не указан, то будет попытка чтения токена из этого файла в token_path.

По умолчанию: ".vault-token"

Настройка:

  • Запись в INI:

    [hashi_vault_collection]
    token_file = .vault-token
    

    добавлено в community.hashi_vault 1.4.0

  • Переменная окружения: ANSIBLE_HASHI_VAULT_TOKEN_FILE

    добавлено в community.hashi_vault 0.2.0

  • Переменная: ansible_hashi_vault_token_file

    добавлено в community.hashi_vault 1.2.0

путь_к_токенам

строка

Если токен не указан, то будет попытка чтения token_file из этого пути.

Настройка:

  • Запись в INI:

    [hashi_vault_collection]
    token_path = VALUE
    

    добавлено в community.hashi_vault 1.4.0

  • Переменная окружения: ANSIBLE_HASHI_VAULT_TOKEN_PATH

    добавлено в community.hashi_vault 0.2.0

  • Переменная: ansible_hashi_vault_token_path

    добавлено в community.hashi_vault 1.2.0

валидация_токена

булево

добавлено в community.hashi_vault 0.2.0

Для аутентификации по токену выполняется операция lookup-self для определения его валидности перед использованием.

Отключить, если у вашего токена нет lookup-self возможности.

Возможные значения:

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

Настройка:

  • Запись в INI:

    [hashi_vault_collection]
    token_validate = false
    

    добавлено в community.hashi_vault 1.4.0

  • Переменная окружения: ANSIBLE_HASHI_VAULT_TOKEN_VALIDATE
  • Переменная: ansible_hashi_vault_token_validate

    добавлено в community.hashi_vault 1.2.0

url

строка

URL-адрес сервиса Vault.

Если не указан другим способом, используется значение переменной среды VAULT_ADDR.

Если VAULT_ADDR также не определено, будет выведено сообщение об ошибке.

Настройка:

  • Запись в INI:

    [hashi_vault_collection]
    url = VALUE
    

    добавлена в community.hashi_vault 1.4.0

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

    добавлена в community.hashi_vault 0.2.0

  • Переменная: ansible_hashi_vault_url

    добавлена в community.hashi_vault 1.2.0

  • Переменная: ansible_hashi_vault_addr

    добавлена в community.hashi_vault 1.2.0

username

строка

Имя пользователя для аутентификации.

Настройка:

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

    добавлена в community.hashi_vault 1.2.0

  • Переменная: ansible_hashi_vault_username

    добавлена в community.hashi_vault 1.2.0

validate_certs

логическое

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

Будет заполнен обратным значением VAULT_SKIP_VERIFY, если оно установлено, а validate_certs не указано явно.

Будет по умолчанию равно true, если ни validate_certs, ни VAULT_SKIP_VERIFY не установлены.

Варианты:

  • false
  • true

Настройка:

  • Переменная: ansible_hashi_vault_validate_certs

    добавлена в community.hashi_vault 1.2.0

Примечания

Примечание

  • При использовании ключевых и позиционных параметров, позиционные параметры должны указываться перед ключевыми параметрами: lookup('community.hashi_vault.vault_read', term1, term2, key1=value1, key2=value2) и query('community.hashi_vault.vault_read', term1, term2, key1=value1, key2=value2)

См. также

См. также

community.hashi_vault.vault_read

Выполнение операции чтения из HashiCorp Vault.

community.hashi_vault.hashi_vault поиск

Официальная документация для плагина поиска community.hashi_vault.hashi_vault.

Примеры

- name: Read a kv2 secret
  ansible.builtin.debug:
    msg: "{{ lookup('community.hashi_vault.vault_read', 'secret/data/hello', url='https://vault:8201') }}"

- name: Retrieve an approle role ID
  ansible.builtin.debug:
    msg: "{{ lookup('community.hashi_vault.vault_read', 'auth/approle/role/role-name/role-id', url='https://vault:8201') }}"

- name: Perform multiple reads with a single Vault login
  vars:
    paths:
      - secret/data/hello
      - auth/approle/role/role-one/role-id
      - auth/approle/role/role-two/role-id
  ansible.builtin.debug:
    msg: "{{ lookup('community.hashi_vault.vault_read', *paths, auth_method='userpass', username=user, password=pwd) }}"

- name: Perform multiple reads with a single Vault login in a loop
  vars:
    paths:
      - secret/data/hello
      - auth/approle/role/role-one/role-id
      - auth/approle/role/role-two/role-id
  ansible.builtin.debug:
    msg: '{{ item }}'
  loop: "{{ query('community.hashi_vault.vault_read', *paths, auth_method='userpass', username=user, password=pwd) }}"

- name: Perform multiple reads with a single Vault login in a loop (via with_)
  vars:
    ansible_hashi_vault_auth_method: userpass
    ansible_hashi_vault_username: '{{ user }}'
    ansible_hashi_vault_password: '{{ pwd }}'
  ansible.builtin.debug:
    msg: '{{ item }}'
  with_community.hashi_vault.vault_read:
    - secret/data/hello
    - auth/approle/role/role-one/role-id
    - auth/approle/role/role-two/role-id

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

Ключ

Описание

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

список / элементы=словарь

Необработанный результат чтения по заданному пути.

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

Авторы

  • Brian Scholer (@briantist)

Подсказка

Записи конфигурации для каждого типа записи имеют порядок приоритета снизу вверх. Например, переменная, которая находится ниже в списке, переопределит переменную, которая расположена выше.

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

  • Отслеживание проблем
  • Репозиторий (источники)
  • Обсуждения, вопросы и ответы, устранение неполадок
  • Общение

© 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/community/hashi_vault/vault_read_lookup.html

Spec-Zone.ru

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