Модуль community.zabbix.zabbix_user_directory — создание, изменение и удаление каталогов пользователей Zabbix
Примечание
Этот модуль входит в коллекцию community.zabbix (версия 4.2.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в состав ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.zabbix. Для использования этого модуля могут потребоваться дополнительные зависимости; подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: community.zabbix.zabbix_user_directory.
Обзор
- Этот модуль позволяет создавать, изменять и удалять каталоги пользователей Zabbix.
Требования
Следующие требования должны быть выполнены на узле, на котором запускается этот модуль.
- python >= 3.9
Параметры
Параметр | Комментарии |
|---|---|
base_dn string | Строка базового различительного имени LDAP. Обязательный параметр, если |
bind_dn string | Строка различительного имени для привязки LDAP. Может быть пустой при анонимной привязке. По умолчанию: |
bind_password string | Пароль для привязки LDAP. Может быть пустым при анонимной привязке. |
description string | Описание каталога пользователей. По умолчанию: |
encrypt_assertions boolean | Шифрование утверждений SAML. Шифруются, если значение true. Этот параметр доступен начиная с Zabbix 6.4. Варианты:
|
encrypt_nameid boolean | Шифрование идентификатора имени SAML. Шифруется, если значение true. Этот параметр доступен начиная с Zabbix 6.4. Варианты:
|
group_basedn string | Путь к группам в дереве LDAP для поиска данных о группах. Используется для настройки проверки членства пользователя в группах в openLDAP. Обязательный параметр, если не задан group_membership. Этот параметр доступен начиная с Zabbix 6.4. |
group_filter string | Фильтр поиска LDAP для выбора групп при поиске определённых групп пользователя. Используется для настройки проверки членства пользователя в группах в openLDAP. Игнорируется при подготовке пользователя, если задан group_membership. Этот параметр доступен начиная с Zabbix 6.4. |
group_member string | Имя атрибута дерева LDAP, содержащего имя группы, полученное с помощью запроса Используется для настройки проверки членства пользователя в группах в openLDAP. Игнорируется при подготовке пользователя, если задан group_membership. Этот параметр доступен начиная с Zabbix 6.4. |
group_membership string | Свойство LDAP, содержащее группы пользователя. Например, memberOf Этот параметр доступен начиная с Zabbix 6.4. |
group_name string | Имя атрибута LDAP/SAML, используемого для получения имени группы при сопоставлении групп между Zabbix и IdP. Используется для настройки проверки членства пользователя в группах в LDAP. Игнорируется при подготовке пользователя, если задан group_membership. Этот параметр доступен начиная с Zabbix 6.4. |
host string | Имя узла, IP-адрес или URI сервера LDAP. URI должен содержать схему, узел и порт (необязательно). Обязательный параметр, если |
http_login_password string | Пароль Basic Auth |
http_login_user string | Имя пользователя Basic Auth |
idp_entityid string | URI SAML, идентифицирующий IdP в сообщениях SAML. Обязательный параметр, если Этот параметр доступен начиная с Zabbix 6.4. |
idp_type string | Тип IdP. Может существовать только один каталог пользователей типа SAML. Этот параметр доступен начиная с Zabbix 6.4. Варианты:
|
name string / обязательный | Уникальное имя каталога пользователей. |
nameid_format string | Формат идентификатора имени SP SAML. Этот параметр доступен начиная с Zabbix 6.4. |
port integer | Порт сервера LDAP. Обязательный параметр, если |
provision_groups list / elements=dictionary | Массив объектов сопоставления типов носителей IdP. Этот параметр доступен начиная с Zabbix 6.4. |
|
name string / обязательный |
Полное имя группы IdP. Поддерживается символ подстановки «*». Значение должно быть уникальным для всех сопоставлений групп подготовки. |
|
role string / обязательный |
Имя роли пользователя, назначаемой пользователю. Если совпадают несколько сопоставлений групп подготовки, пользователю будет назначена роль с наивысшим типом пользователя. Если несколько ролей имеют одинаковый тип пользователя, будет назначена первая роль (в алфавитном порядке). |
|
user_groups list / elements=string / обязательный |
Массив имён групп пользователей Zabbix. Если совпадают несколько сопоставлений групп подготовки, пользователю будут назначены группы пользователей Zabbix из всех совпавших сопоставлений. |
provision_media list / elements=dictionary | Массив объектов сопоставления типов носителей IdP. Этот параметр доступен начиная с Zabbix 6.4. |
|
attribute string / обязательный |
Имя атрибута. Используется как значение поля sendto. Если атрибут присутствует в данных, полученных от IdP, и его значение не пустое, для подготавливаемого пользователя будет создан носитель. |
|
mediatype string / обязательный |
Имя создаваемого типа носителя. |
|
name string / обязательный |
Отображаемое имя в списке сопоставлений типов носителей. |
provision_status boolean | Состояние подготовки пользователей в каталоге пользователей. Если значение false, подготовка пользователей, созданных этим каталогом, отключена. Если значение true, подготовка пользователей, созданных этим каталогом, включена. Кроме того, должен быть включён статус аутентификации Этот параметр доступен начиная с Zabbix 6.4. Варианты:
|
scim_status boolean | Включена или отключена подготовка SCIM для SAML. Этот параметр доступен начиная с Zabbix 6.4. Варианты:
|
search_attribute string | Имя атрибута LDAP для идентификации пользователя по имени пользователя в базе данных Zabbix. Обязательный параметр, если |
search_filter string | Пользовательский фильтр LDAP, используемый при аутентификации пользователя в LDAP. Поддерживаемые заполнители search_filter %{attr} — имя атрибута поиска (uid, sAMAccountName); %{user} — имя пользователя. По умолчанию: |
sign_assertions boolean | Подпись утверждений SAML. Утверждения подписываются, если значение true. Этот параметр доступен начиная с Zabbix 6.4. Варианты:
|
sign_authn_requests boolean | Подпись запросов аутентификации SAML. Запросы подписываются, если значение true. Этот параметр доступен начиная с Zabbix 6.4. Варианты:
|
sign_logout_requests boolean | Подпись запросов выхода из системы SAML. Запросы подписываются, если значение true. Этот параметр доступен начиная с Zabbix 6.4. Варианты:
|
sign_logout_responses boolean | Подпись ответов на запросы выхода из системы SAML. Ответы подписываются, если значение true. Этот параметр доступен начиная с Zabbix 6.4. Варианты:
|
sign_messages boolean | Подпись сообщений SAML. Сообщения подписываются, если значение true. Этот параметр доступен начиная с Zabbix 6.4. Варианты:
|
slo_url string | URL конечной точки службы IdP SAML, на которую Zabbix будет отправлять запросы выхода из системы SAML. Этот параметр доступен начиная с Zabbix 6.4. |
sp_entityid string | Идентификатор сущности SP SAML. Обязательный параметр, если Этот параметр доступен начиная с Zabbix 6.4. |
sso_url string | URL службы SAML SSO IdP, на которую Zabbix будет отправлять запросы аутентификации SAML. Обязательный параметр, если Этот параметр доступен начиная с Zabbix 6.4. |
start_tls integer | Параметр startTLS для LDAP. Не может использоваться с узлами, работающими по протоколу ldaps://. Варианты:
|
state string | Состояние каталога пользователей. При значении При значении Варианты:
|
user_lastname string | Имя атрибута LDAP/SAML, используемого для поля users.surname при подготовке пользователя. Этот параметр доступен начиная с Zabbix 6.4. |
user_ref_attr string | Имя атрибута объекта пользователя LDAP. Подставляется вместо заполнителя %{ref} в строке c(group_filter). Этот параметр доступен начиная с Zabbix 6.4. |
user_username string | Имя атрибута LDAP/SAML, используемого для поля users.name при подготовке пользователя. Этот параметр доступен начиная с Zabbix 6.4. |
username_attribute string | Атрибут имени пользователя SAML, используемый при аутентификации для сравнения со значением Zabbix user.username. Обязательный параметр, если Этот параметр доступен начиная с Zabbix 6.4. |
Примеры
---
# If you want to use Username and Password to be authenticated by Zabbix Server
- name: Set credentials to access Zabbix Server API
ansible.builtin.set_fact:
ansible_user: Admin
ansible_httpapi_pass: zabbix
# If you want to use API token to be authenticated by Zabbix Server
# https://www.zabbix.com/documentation/current/en/manual/web_interface/frontend_sections/administration/general#api-tokens
- name: Set API token
ansible.builtin.set_fact:
ansible_zabbix_auth_key: 8ec0d52432c15c91fcafe9888500cf9a607f44091ab554dbee860f6b44fac895
- name: Create new user directory or update existing info (Zabbix <= 6.2)
# set task level variables as we change ansible_connection plugin here
vars:
ansible_network_os: community.zabbix.zabbix
ansible_connection: httpapi
ansible_httpapi_port: 443
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_zabbix_url_path: "zabbixeu" # If Zabbix WebUI runs on non-default (zabbix) path ,e.g. http://<FQDN>/zabbixeu
ansible_host: zabbix-example-fqdn.org
community.zabbix.zabbix_user_directory:
state: present
name: TestUserDirectory
host: "test.com"
port: 389
base_dn: "ou=Users,dc=example,dc=org"
search_attribute: "uid"
bind_dn: "cn=ldap_search,dc=example,dc=org"
description: "Test user directory"
search_filter: "(%{attr}=test_user)"
start_tls: 0
- name: Create new user directory with LDAP IDP or update existing info (Zabbix >= 6.4)
# set task level variables as we change ansible_connection plugin here
vars:
ansible_network_os: community.zabbix.zabbix
ansible_connection: httpapi
ansible_httpapi_port: 443
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_zabbix_url_path: "zabbixeu" # If Zabbix WebUI runs on non-default (zabbix) path ,e.g. http://<FQDN>/zabbixeu
ansible_host: zabbix-example-fqdn.org
community.zabbix.zabbix_user_directory:
state: present
name: TestUserDirectory
idp_type: ldap
host: "test.ca"
port: 389
base_dn: "ou=Users,dc=example,dc=org"
search_attribute: "uid"
provision_status: true
group_name: cn
group_basedn: ou=Group,dc=example,dc=org
group_member: member
user_ref_attr: uid
group_filter: "(member=uid=%{ref},ou=Users,dc=example,dc=com)"
user_username: first_name
user_lastname: last_name
provision_media:
- name: Media1
mediatype: Email
attribute: email1
provision_groups:
- name: idpname1
role: Guest role
user_groups:
- Guests
- name: Create new user directory with SAML IDP or update existing info (Zabbix >= 6.4)
# set task level variables as we change ansible_connection plugin here
vars:
ansible_network_os: community.zabbix.zabbix
ansible_connection: httpapi
ansible_httpapi_port: 443
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_zabbix_url_path: "zabbixeu" # If Zabbix WebUI runs on non-default (zabbix) path ,e.g. http://<FQDN>/zabbixeu
ansible_host: zabbix-example-fqdn.org
community.zabbix.zabbix_user_directory:
state: present
name: TestUserDirectory
idp_type: saml
idp_entityid: http://okta.com/xxxxx
sp_entityid: zabbix
sso_url: http://xxxx.okta.com/app/xxxxxx_123dhu8o3
username_attribute: usrEmail
provision_status: true
group_name: cn
user_username: first_name
user_lastname: last_name
provision_media:
- name: Media1
mediatype: Email
attribute: email1
provision_groups:
- name: idpname1
role: Guest role
user_groups:
- Guests
Ссылки на коллекцию
© 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/zabbix/zabbix_user_directory_module.html