Модуль community.general.ldap_attrs — Добавление или удаление нескольких значений атрибутов LDAP
Примечание
Этот модуль входит в коллекцию community.general (версия 9.5.0).
У вас, возможно, уже установлена эта коллекция, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install community.general. Для использования этого модуля необходимы дополнительные требования, см. Требования для получения подробностей.
Чтобы использовать его в книге задач, укажите: community.general.ldap_attrs.
Добавлена в community.general 0.2.0
Обзор
- Добавление или удаление нескольких значений атрибутов LDAP.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python-ldap
Параметры
Параметр | Комментарии |
|---|---|
attributes dictionary / required | Атрибут(ы) и значение(я) для добавления или удаления. Каждое значение атрибута может быть строкой для однозначных атрибутов или списком строк для многозначных атрибутов. Если вы указываете значения для этого параметра в YAML, обратите внимание, что вы можете улучшить читаемость для длинных строковых значений, используя модификаторы YAML-блоков, как показано в примерах для этого модуля. Обратите внимание, что при использовании значений, которые YAML/ansible-core интерпретирует как другие типы, такие как |
bind_dn string | DN для привязки. Если этот параметр опущен, мы попробуем привязку SASL с механизмом EXTERNAL по умолчанию. Если это поле пустое, мы будем использовать анонимную привязку. |
bind_pw string | Пароль для использования с По умолчанию: |
ca_path path добавлено в community.general 6.5.0 | Укажите путь к PEM-файлу с сертификатами CA. |
client_cert path добавлено в community.general 7.1.0 | Файл цепочки сертификатов в формате PEM, который будет использоваться для проверки подлинности клиента SSL. Обязательно, если определен |
client_key path добавлено в community.general 7.1.0 | Файл в формате PEM, содержащий ваш закрытый ключ, который будет использоваться для проверки подлинности клиента SSL. Обязательно, если определен |
dn string / required | DN записи для добавления или удаления. |
ordered boolean | Если Варианты:
|
referrals_chasing string добавлено в community.general 2.0.0 | Установите поведение отслеживания рефералов.
Варианты:
|
sasl_class string добавлено в community.general 2.0.0 | Класс для использования при аутентификации SASL. Варианты:
|
server_uri string | Параметр Значение по умолчанию позволяет базовой библиотеке LDAP-клиента искать сокет домена UNIX в его расположении по умолчанию. Обратите внимание, что при использовании нескольких URI вы не можете определить, к какому URI подключается ваш клиент. Для URI, содержащих дополнительные поля, особенно при использовании запятых, поведение не определено. По умолчанию: |
start_tls boolean | Если true, мы будем использовать расширение LDAP START_TLS. Варианты:
|
state string | Состояние значений атрибутов. Если Варианты:
|
validate_certs boolean | Если установлено в Это следует использовать только на сайтах, использующих самозаверенные сертификаты. Варианты:
|
xorder_discovery string добавлено в community.general 6.4.0 | Установите поведение обработки упорядоченных DN.
Варианты:
|
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: полная | Может работать в режиме |
diff_mode | Поддержка: полная добавлено в community.general 8.5.0 | Возвращает подробную информацию о том, что изменилось (или, возможно, что нужно изменить в |
Примечания
Примечание
- Данный модуль обрабатывает только атрибуты существующих записей. Для добавления или удаления целых записей, см. community.general.ldap_entry.
- Настройки аутентификации по умолчанию пытаются использовать привязку SASL EXTERNAL через сокет доменной системы Unix. Это хорошо работает с установкой Ubuntu по умолчанию, например, которая включает правило ACL cn=peercred,cn=external,cn=auth, позволяющее root изменять конфигурацию сервера. Если вам нужно использовать простую привязку для доступа к серверу, передайте учетные данные в
bind_dnиbind_pw. - Для
state=presentиstate=absent, все сравнения значений выполняются на сервере для максимальной точности. Дляstate=exact, значения необходимо сравнивать в Python, что очевидно игнорирует правила сопоставления LDAP. Это должно работать в большинстве случаев, но теоретически возможно наблюдать ложные изменения, когда целевые и фактические значения семантически идентичны, но лексически различны.
Примеры
- name: Configure directory number 1 for example.com
community.general.ldap_attrs:
dn: olcDatabase={1}hdb,cn=config
attributes:
olcSuffix: dc=example,dc=com
state: exact
# The complex argument format is required here to pass a list of ACL strings.
- name: Set up the ACL
community.general.ldap_attrs:
dn: olcDatabase={1}hdb,cn=config
attributes:
olcAccess:
- >-
{0}to attrs=userPassword,shadowLastChange
by self write
by anonymous auth
by dn="cn=admin,dc=example,dc=com" write
by * none'
- >-
{1}to dn.base="dc=example,dc=com"
by dn="cn=admin,dc=example,dc=com" write
by * read
state: exact
# An alternative approach with automatic X-ORDERED numbering
- name: Set up the ACL
community.general.ldap_attrs:
dn: olcDatabase={1}hdb,cn=config
attributes:
olcAccess:
- >-
to attrs=userPassword,shadowLastChange
by self write
by anonymous auth
by dn="cn=admin,dc=example,dc=com" write
by * none'
- >-
to dn.base="dc=example,dc=com"
by dn="cn=admin,dc=example,dc=com" write
by * read
ordered: true
state: exact
- name: Declare some indexes
community.general.ldap_attrs:
dn: olcDatabase={1}hdb,cn=config
attributes:
olcDbIndex:
- objectClass eq
- uid eq
- name: Set up a root user, which we can use later to bootstrap the directory
community.general.ldap_attrs:
dn: olcDatabase={1}hdb,cn=config
attributes:
olcRootDN: cn=root,dc=example,dc=com
olcRootPW: "{SSHA}tabyipcHzhwESzRaGA7oQ/SDoBZQOGND"
state: exact
- name: Remove an attribute with a specific value
community.general.ldap_attrs:
dn: uid=jdoe,ou=people,dc=example,dc=com
attributes:
description: "An example user account"
state: absent
server_uri: ldap://localhost/
bind_dn: cn=admin,dc=example,dc=com
bind_pw: password
- name: Remove specified attribute(s) from an entry
community.general.ldap_attrs:
dn: uid=jdoe,ou=people,dc=example,dc=com
attributes:
description: []
state: exact
server_uri: ldap://localhost/
bind_dn: cn=admin,dc=example,dc=com
bind_pw: password
Значения возврата
Общие значения возврата описаны здесь, следующие поля уникальны для данного модуля:
Ключ | Описание |
|---|---|
modlist список / элементы=строка | список измененных параметров Возвращено: успешно Пример: |
Ссылки на сборку
© 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/general/ldap_attrs_module.html