Модуль community.clickhouse.clickhouse_user — создание или удаление пользователя ClickHouse с помощью интерфейса Client из clickhouse-driver
Примечание
Этот модуль входит в коллекцию community.clickhouse (версия 2.1.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.clickhouse. Для использования этого модуля необходимы дополнительные требования; подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: community.clickhouse.clickhouse_user.
Добавлено в community.clickhouse 0.4.0
Краткое описание
- Создаёт или удаляет пользователя ClickHouse с помощью интерфейса Client из clickhouse-driver.
- Модуль может только создавать и удалять пользователей без дополнительных параметров. Новые возможности будут добавлены в будущем.
Требования
Следующие требования должны быть выполнены на узле, на котором запускается этот модуль.
- clickhouse-driver
Параметры
Параметр | Комментарии |
|---|---|
authentication dictionary добавлено в community.clickhouse 2.1.0 | Настройка аутентификации пользователя. Поддерживается использование LDAP и различных методов хеширования паролей. Нельзя использовать одновременно с устаревшими |
|
password string |
Пароль или хеш. |
|
server string |
Имя сервера (обязательно, если type=ldap). |
|
type string |
Используемый метод аутентификации. Варианты:
|
client_kwargs dictionary | Любые дополнительные именованные аргументы, передаваемые интерфейсу Client при создании его объекта. По умолчанию: |
cluster string | Выполнять команду на всех узлах кластера. Если кластер не настроен, выполнение команды завершится ошибкой. |
default_roles list / elements=string добавлено в community.clickhouse 0.6.0 | Назначает указанные роли ролями пользователя по умолчанию. Роли должны быть явно предоставлены пользователю: вручную до использования этого аргумента или с помощью аргумента Чтобы добавить или удалить роли, используйте аргумент Чтобы сбросить все роли по умолчанию, передайте пустой список ( |
default_roles_mode string добавлено в community.clickhouse 0.6.0 | При значении При значении При значении Игнорируется, если не задан Варианты:
|
login_db string | Соответствует аргументу Если не указан, используется значение аргумента по умолчанию для драйвера. |
login_host string | Соответствует аргументу По умолчанию: |
login_password string | Соответствует аргументу Если не указан, используется значение аргумента по умолчанию для драйвера. |
login_port integer | Соответствует аргументу Если не указан, используется значение аргумента по умолчанию для драйвера. |
login_user string | Соответствует аргументу Если не указан, используется значение аргумента по умолчанию для драйвера. Убедитесь, что у пользователя есть разрешения на чтение системных таблиц, перечисленных в разделе RETURN. |
name string / обязательный | Имя пользователя, которого нужно добавить или удалить. |
password string | Задаёт пароль пользователя. Пароль можно передать в открытом виде или в виде хеша. Нельзя использовать одновременно с |
roles list / elements=string добавлено в community.clickhouse 0.6.0 | Предоставляет пользователю указанные роли. Чтобы добавить или удалить роли, используйте аргумент Чтобы отозвать все роли, передайте пустой список ( |
roles_mode string добавлено в community.clickhouse 0.6.0 | При значении При значении При значении Аргумент игнорируется, если не задан Варианты:
|
settings list / elements=string добавлено в community.clickhouse 0.5.0 | Настройки с ограничениями, применяемыми по умолчанию при входе пользователя. Также можно указать профиль, из которого будут наследоваться настройки. Если параметр указан для существующего пользователя, настройки будут обновлены, только если они отличаются от текущих. Для сравнения модуль получает текущие настройки из |
state string | Состояние пользователя. Если указано Если указано Варианты:
|
type_password string | Тип передаваемого пароля (plaintext_password, sha256_password, sha256_hash…). Подробности см. в разделе https://clickhouse.com/docs/en/sql-reference/statements/create/user. Нельзя использовать одновременно с По умолчанию: |
update_password string | Если указано Если указано Варианты:
|
user_hosts list / elements=dictionary добавлено в community.clickhouse 1.0.0 | Ограничения по хостам для пользователя. Это список словарей, каждый из которых указывает тип ограничения и хосты или шаблон, к которым оно применяется. |
|
hosts list / elements=string |
Список хостов или шаблонов, с которых пользователю разрешено подключаться. Этот параметр обязателен, если |
|
type string / обязательный |
Метод проверки, определяющий, с каких хостов пользователям разрешено подключаться ( Если параметр указан для существующего пользователя, предыдущий тип ограничения по хостам и список хостов будут обновлены. Подробности см. в разделе https://clickhouse.com/docs/en/sql-reference/statements/create/user. |
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: полная | Поддерживает check_mode. |
Примечания
Примечание
- Дополнительные сведения об интерфейсе драйвера см. в документации clickhouse-driver.
Примеры
- name: Create user granting roles and setting default role
community.clickhouse.clickhouse_user:
login_host: localhost
login_user: alice
login_db: foo
login_password: my_password
name: test_user
authentication:
password: qwerty
type: sha256_password
roles:
- accountant
- manager
default_roles:
- accountant
- name: Append the sales role to test_user's roles
community.clickhouse.clickhouse_user:
login_host: localhost
login_user: alice
login_db: foo
login_password: my_password
name: test_user
roles:
- sales
roles_mode: append
- name: Unset all test_user's default roles
community.clickhouse.clickhouse_user:
login_host: localhost
login_user: alice
login_db: foo
login_password: my_password
name: test_user
default_roles: []
- name: Revoke all roles from test_user
community.clickhouse.clickhouse_user:
login_host: localhost
login_user: alice
login_db: foo
login_password: my_password
name: test_user
roles: []
- name: If user exists, update password
community.clickhouse.clickhouse_user:
login_host: localhost
login_user: alice
login_db: foo
login_password: my_password
name: test_user
authentication:
password: qwerty123
update_password: always
- name: Update user settings (idempotent - only updates if different)
community.clickhouse.clickhouse_user:
login_host: localhost
login_user: alice
login_db: foo
login_password: my_password
name: test_user
settings:
- max_memory_usage = 20000 READONLY
- max_threads = 8
- name: Create user with specific settings
community.clickhouse.clickhouse_user:
login_host: localhost
login_user: alice
login_db: foo
login_password: my_password
name: test_user
authentication:
password: 9e69e7e29351ad837503c44a5971edebc9b7e6d8601c89c284b1b59bf37afa80
type: sha256_hash
cluster: test_cluster
settings:
- max_memory_usage = 15000 MIN 15000 MAX 16000 READONLY
- PROFILE 'restricted'
state: present
- name: Create a user that can only connect from a specified host
community.clickhouse.clickhouse_user:
login_host: localhost
login_user: alice
login_db: foo
login_password: my_password
name: test_user
user_hosts:
- type: NAME
hosts:
- 'host1'
- name: Update user host restrictions. Any previous host restrictions will be replaced. (idempotent - only updates if different)
community.clickhouse.clickhouse_user:
login_host: localhost
login_user: alice
login_db: foo
login_password: my_password
name: test_user
user_hosts:
- type: LIKE
hosts:
- '%.example.com'
- name: Drop user
community.clickhouse.clickhouse_user:
login_host: localhost
login_user: alice
login_db: foo
login_password: my_password
name: test_user
state: absent
- name: Create user identified with ldap
community.clickhouse.clickhouse_user:
name: alice
state: present
authentication:
type: ldap
server: ad
- name: Create user identified with password
community.clickhouse.clickhouse_user:
name: alice
state: present
authentication:
password: my_password
- name: Create user identified with passed hash
community.clickhouse.clickhouse_user:
name: alice
state: present
authentication:
type: sha256_hash
password: my_hash
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
executed_statements list / elements=string | Выполненные операторы, изменяющие данные. Возвращается: при успешном выполнении Пример: |
Ссылки на коллекцию
© 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/clickhouse/clickhouse_user_module.html