Spec-Zone.ru › Ansible 2.11

community.general.ldap_attrs – Добавление или удаление нескольких значений атрибутов LDAP

Примечание

Этот плагин входит в состав коллекции community.general (версия 2.0.1).

Для его установки используйте: ansible-galaxy collection install community.general.

Для использования в книге задач укажите: community.general.ldap_attrs.

Новое в версии 0.2.0: коллекции community.general

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Обзор

  • Добавление или удаление нескольких значений атрибутов LDAP.

Требования

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

  • python-ldap

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
attributes
словарь / обязательный
Атрибуты и значения для добавления или удаления. Требуется сложный формат аргумента, чтобы передать список строк (см. примеры).
bind_dn
строка
DN для связи. Если этот параметр опущен, будет использоваться SASL-соединение с механизмом EXTERNAL по умолчанию.
Если параметр пустой, используется анонимное соединение.
bind_pw
строка
Пароль, используемый с bind_dn.
dn
строка / обязательный
DN записи для добавления или удаления.
ordered
булево
    Варианты:
  • нет ←
  • да
Если yes, значения списка будут предваряться индексами X-ORDERED во всех атрибутах, указанных в текущей задаче. Это особенно полезно с атрибутом olcAccess для удобного управления списками контроля доступа LDAP.
referrals_chasing
строка
добавлено в версии 2.0.0 коллекции community.general
    Варианты:
  • disabled
  • анонимный ←
Устанавливает поведение поиска рефералов.
anonymous следует рефералам анонимно. Это поведение по умолчанию.
disabled отключает поиск рефералов. Это устанавливает OPT_REFERRALS в значение выкл.
sasl_class
строка
добавлено в версии 2.0.0 коллекции community.general
    Варианты:
  • external ←
  • gssapi
Класс, используемый для аутентификации SASL.
Возможные варианты: external, gssapi.
server_uri
строка
По умолчанию:
"ldapi:///"
URI сервера LDAP.
Значение по умолчанию позволяет подлежащей библиотеке клиента LDAP искать сокет доменного имени UNIX по умолчанию.
start_tls
булево
    Варианты:
  • нет ←
  • да
Если true, будет использован расширение START_TLS LDAP.
state
строка
    Варианты:
  • present ←
  • absent
  • exact
Состояние значений атрибутов. Если present, все указанные значения атрибутов будут добавлены, если их нет. Если absent, все указанные значения атрибутов будут удалены, если они присутствуют. Если exact, набор значений атрибутов будет точно соответствовать предоставленным и никаких других. Если state=exact и значение атрибута value пустое, все значения этого атрибута будут удалены.
validate_certs
булево
    Варианты:
  • нет
  • да ←
Если установлено no, сертификаты SSL не будут проверены.
Это следует использовать только на сайтах, использующих самозаверяющие сертификаты.

Примечания

Примечание

  • Это касается только атрибутов в существующих записях. Чтобы добавить или удалить целые записи, см. 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: yes
    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
список / элементы=строка
успех
список измененных параметров

Пример:
[[2, "olcRootDN", ["cn=root,dc=example,dc=com"]]]


Авторы

  • Jiri Tyr (@jtyr)
  • Alexander Korinek (@noles)
  • Maciej Delmanowski (@drybjed)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/general/ldap_attrs_module.html

Spec-Zone.ru

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