Spec-Zone.ru › Ansible

Модуль community.hashi_vault.vault_database_role_create – Создаёт или обновляет определение динамической роли

Примечание

Этот модуль входит в коллекцию community.hashi_vault (версия 6.2.0).

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

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

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

Новая функция в community.hashi_vault 6.2.0

  • Описание
  • Требования
  • Параметры
  • Атрибуты
  • Примечания
  • Примеры

Описание

  • Создаёт или обновляет определение динамической роли.

Требования

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

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

Параметры

Параметр

Комментарии

auth_method

string

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

none auth method was added in collection version 1.2.0.

cert auth method was added in collection version 1.4.0.

aws_iam_login was renamed aws_iam in collection version 2.1.0 and was removed in 3.0.0.

azure auth method was added in collection version 3.2.0.

Варианты:

  • "token" ← (default)
  • "userpass"
  • "ldap"
  • "approle"
  • "aws_iam"
  • "azure"
  • "jwt"
  • "cert"
  • "none"

aws_access_key

aliases: aws_access_key_id

string

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

aws_iam_server_id

string

added in community.hashi_vault 0.2.0

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

aws_profile

aliases: boto_profile

string

Профиль AWS

aws_secret_key

aliases: aws_secret_access_key

string

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

aws_security_token

string

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

azure_client_id

string

added in community.hashi_vault 3.2.0

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

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

azure_client_secret

string

added in community.hashi_vault 3.2.0

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

azure_resource

string

added in community.hashi_vault 3.2.0

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

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

azure_tenant_id

string

added in community.hashi_vault 3.2.0

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

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

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

ca_cert

aliases: cacert

string

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

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

cert_auth_private_key

path

added in community.hashi_vault 1.4.0

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

cert_auth_public_key

path

added in community.hashi_vault 1.4.0

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

connection_name

string / required

Имя подключения, под которым должна быть создана роль.

creation_statements

list / elements=string / required

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

default_ttl

integer

Значение TTL по умолчанию для роли.

По умолчанию: 3600

engine_mount_point

string

Путь, по которому смонтирован бэкэнд секретов.

jwt

string

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

max_ttl

integer

Максимальное время жизни роли.

По умолчанию: 86400

mount_point

string

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

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

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

namespace

string

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

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

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

password

string

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

proxies

any

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

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

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

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

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

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

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

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

region

string

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

renew_statements

list / elements=string

Указывает операторы базы данных, которые должны быть выполнены для обновления пользователя

retries

any

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

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

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

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

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

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

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

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

retry_action

string

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

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

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

Варианты:

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

revocation_statements

list / elements=string

Указывает операторы базы данных, которые должны быть выполнены для отзыва пользователя.

role_id

string

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

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

Для аутентификации azure, role_id обязателен.

role_name

string / required

Имя роли, которая должна быть создана.

rollback_statements

list / elements=string

Указывает операторы базы данных, которые должны быть выполнены для отката операции создания в случае ошибки.

secret_id

string

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

timeout

integer

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

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

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

token

string

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

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

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

token_file

string

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

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

token_path

string

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

token_validate

boolean

added in community.hashi_vault 0.2.0

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

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

Варианты:

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

url

string

URL-адрес службы Vault.

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

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

username

string

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

validate_certs

boolean

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

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

По умолчанию будет true, если ни validate_certs, ни VAULT_SKIP_VERIFY не заданы.

Варианты:

  • false
  • true

Атрибуты

Атрибут

Поддержка

Описание

action_group

Группа действий: community.hashi_vault.vault

Используйте group/community.hashi_vault.vault в module_defaults, чтобы установить значения по умолчанию для этого модуля.

check_mode

Поддержка: частичная

В режиме проверки будет возвращен пример ответа, но создание роли в Hashicorp Vault не будет выполнено.

Может работать в режиме check_mode и возвращать прогноз о статусе изменений без модификации целевого объекта.

Примечания

Примечание

  • Этот модуль всегда сообщает статус changed, так как не может гарантировать идемпотентность.
  • Используйте changed_when для управления этим в случаях, когда известно, что операция не изменяет состояние.

Примеры

- name: Generate creation statement
  ansible.builtin.set_fact:
    creation_statements = [
        "CREATE ROLE \"{{name}}\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';",
        "GRANT SELECT ON ALL TABLES IN SCHEMA public TO \"{{name}}\";"
    ]

- name: Create / update Role with the default mount point
  community.hashi_vault.vault_database_role_create:
    url: https://vault:8201
    auth_method: userpass
    username: '{{ user }}'
    password: '{{ passwd }}'
    connection_name: SomeConnection
    role_name: SomeRole
    db_username: '{{ db_username}}'
    creation_statements: '{{ creation_statements }}'
  register: result

- name: Display the result of the operation
  ansible.builtin.debug:
    msg: "{{ result }}"

- name: Create / update Role with a custom mount point
  community.hashi_vault.vault_database_role_create:
    url: https://vault:8201
    auth_method: userpass
    username: '{{ user }}'
    password: '{{ passwd }}'
    engine_mount_point: db1
    connection_name: SomeConnection
    role_name: SomeRole
    db_username: '{{ db_username}}'
    creation_statements: '{{ creation_statements }}'
  register: result

- name: Display the result of the operation
  ansible.builtin.debug:
    msg: "{{ result }}"

Авторы

  • Martin Chmielewski (@M4rt1nCh)

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

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

© 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_database_role_create_module.html

Spec-Zone.ru

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