ldap_attr - Добавление или удаление значений атрибутов LDAP.
Новое в версии 2.3.
Обзор
- Добавление или удаление значений атрибутов LDAP.
Требования
Ниже приведены требования к хосту, на котором будет выполняться этот модуль.
- python-ldap
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| bind_dn | DN для привязки. Если этот параметр опущен, будет использоваться привязка SASL с механизмом EXTERNAL. Если параметр пуст, будет использована анонимная привязка. | |
| bind_pw | Пароль для использования с bind_dn. | |
| dn обязательно | DN записи для добавления или удаления. | |
| name обязательно | Имя атрибута для изменения. | |
| server_uri | По умолчанию: "ldapi:///" | URI сервера LDAP. Значение по умолчанию позволяет базовой библиотеке клиента LDAP искать сокет доменной UNIX в стандартном расположении. |
| start_tls bool |
| Если true, будет использоваться расширение START_TLS LDAP. |
| state |
| Состояние значений атрибутов. Если present, все указанные значения будут добавлены, если их нет. Если absent, все указанные значения будут удалены, если присутствуют. Если exact, набор значений будет точно соответствовать предоставленным и никаких других. Если state=exact и value пусто, все значения для этого атрибута будут удалены. |
| validate_certs bool (добавлено в 2.4) |
| Если установлено no, сертификаты SSL не будут проверяться.Это следует использовать только на сайтах, использующих самозаверенные сертификаты. |
| values обязательно | Значение(я) для добавления или удаления. Это может быть строка или список строк. Для передачи списка строк требуется сложный формат аргумента (см. примеры). |
Примечания
Примечание
- Этот модуль работает только со значениями атрибутов в существующих записях. Для добавления или удаления целых записей, обратитесь к 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
ldap_attr:
dn: olcDatabase={1}hdb,cn=config
name: olcSuffix
values: 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
ldap_attr:
dn: olcDatabase={1}hdb,cn=config
name: olcAccess
values:
- >-
{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
- name: Declare some indexes
ldap_attr:
dn: olcDatabase={1}hdb,cn=config
name: olcDbIndex
values: "{{ item }}"
with_items:
- objectClass eq
- uid eq
- name: Set up a root user, which we can use later to bootstrap the directory
ldap_attr:
dn: olcDatabase={1}hdb,cn=config
name: "{{ item.key }}"
values: "{{ item.value }}"
state: exact
with_dict:
olcRootDN: cn=root,dc=example,dc=com
olcRootPW: "{SSHA}tabyipcHzhwESzRaGA7oQ/SDoBZQOGND"
- name: Get rid of an unneeded attribute
ldap_attr:
dn: uid=jdoe,ou=people,dc=example,dc=com
name: shadowExpire
values: ""
state: exact
server_uri: ldap://localhost/
bind_dn: cn=admin,dc=example,dc=com
bind_pw: password
#
# The same as in the previous example but with the authentication details
# stored in the ldap_auth variable:
#
# ldap_auth:
# server_uri: ldap://localhost/
# bind_dn: cn=admin,dc=example,dc=com
# bind_pw: password
- name: Get rid of an unneeded attribute
ldap_attr:
dn: uid=jdoe,ou=people,dc=example,dc=com
name: shadowExpire
values: ""
state: exact
params: "{{ ldap_auth }}"
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| modlist список | успех | список измененных параметров Пример: [[2, "olcRootDN", ["cn=root,dc=example,dc=com"]]] |
Статус
Этот модуль помечен как превью, что означает, что интерфейс не гарантирует обратной совместимости.
Техническое обслуживание
Этот модуль помечен как сообщество, что означает, что его поддерживает сообщество Ansible. Подробнее см. Техническое обслуживание и поддержка модулей.
Список других модулей, поддерживаемых сообществом Ansible, см. здесь.
Автор
- Jiri Tyr (@jtyr)
Подсказка
Если вы обнаружите какие-либо проблемы в этом документе, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/ldap_attr_module.html