Spec-Zone.ru › Ansible

Модуль 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 интерпретирует как другие типы, такие как yes, no (булевы) или 2.10 (с плавающей точкой), убедитесь, что вы заключили их в кавычки, если они предназначены для строк. В противном случае в LDAP могут быть отправлены неправильные значения.

bind_dn

string

DN для привязки. Если этот параметр опущен, мы попробуем привязку SASL с механизмом EXTERNAL по умолчанию.

Если это поле пустое, мы будем использовать анонимную привязку.

bind_pw

string

Пароль для использования с bind_dn.

По умолчанию: ""

ca_path

path

добавлено в community.general 6.5.0

Укажите путь к PEM-файлу с сертификатами CA.

client_cert

path

добавлено в community.general 7.1.0

Файл цепочки сертификатов в формате PEM, который будет использоваться для проверки подлинности клиента SSL.

Обязательно, если определен client_key.

client_key

path

добавлено в community.general 7.1.0

Файл в формате PEM, содержащий ваш закрытый ключ, который будет использоваться для проверки подлинности клиента SSL.

Обязательно, если определен client_cert.

dn

string / required

DN записи для добавления или удаления.

ordered

boolean

Если true, добавлять в начало значений списка номера индексов X-ORDERED во всех атрибутах, указанных в текущей задаче. Это полезно в основном с атрибутом olcAccess для удобного управления списками управления доступом LDAP.

Варианты:

  • false ← (по умолчанию)
  • true

referrals_chasing

string

добавлено в community.general 2.0.0

Установите поведение отслеживания рефералов.

anonymous следовать рефералам анонимно. Это поведение по умолчанию.

disabled отключить отслеживание рефералов. Это устанавливает OPT_REFERRALS в значение off.

Варианты:

  • "disabled"
  • "anonymous" ← (по умолчанию)

sasl_class

string

добавлено в community.general 2.0.0

Класс для использования при аутентификации SASL.

Варианты:

  • "external" ← (по умолчанию)
  • "gssapi"

server_uri

string

Параметр server_uri может быть разделенным запятыми или пробелами списком URI, содержащим только поля схемы, хоста и порта.

Значение по умолчанию позволяет базовой библиотеке LDAP-клиента искать сокет домена UNIX в его расположении по умолчанию.

Обратите внимание, что при использовании нескольких URI вы не можете определить, к какому URI подключается ваш клиент.

Для URI, содержащих дополнительные поля, особенно при использовании запятых, поведение не определено.

По умолчанию: "ldapi:///"

start_tls

boolean

Если true, мы будем использовать расширение LDAP START_TLS.

Варианты:

  • false ← (по умолчанию)
  • true

state

string

Состояние значений атрибутов. Если present, все указанные значения атрибутов будут добавлены, если они отсутствуют. Если absent, все указанные значения атрибутов будут удалены, если они присутствуют. Если exact, множество значений атрибутов будет принудительно установлено точно в соответствии с предоставленными, и никаких других. Если state=exact и значение атрибута пустое, все значения для этого атрибута будут удалены.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"
  • "exact"

validate_certs

boolean

Если установлено в false, SSL-сертификаты проверяться не будут.

Это следует использовать только на сайтах, использующих самозаверенные сертификаты.

Варианты:

  • false
  • true ← (по умолчанию)

xorder_discovery

string

добавлено в community.general 6.4.0

Установите поведение обработки упорядоченных DN.

enable будет выполнять поиск ONELEVEL ниже старшего RDN для поиска соответствующего DN.

disable всегда будет использовать DN без изменений (как передано параметром dn).

auto будет выполнять поиск только в том случае, если первый RDN не содержит номера индекса ({x}).

Варианты:

  • "enable"
  • "auto" ← (по умолчанию)
  • "disable"

Атрибуты

Атрибут

Поддержка

Описание

check_mode

Поддержка: полная

Может работать в режиме check_mode и возвращать прогнозируемый результат изменения без модификации целевого объекта.

diff_mode

Поддержка: полная

добавлено в community.general 8.5.0

Возвращает подробную информацию о том, что изменилось (или, возможно, что нужно изменить в check_mode) при работе в режиме сравнения.

Примечания

Примечание

  • Данный модуль обрабатывает только атрибуты существующих записей. Для добавления или удаления целых записей, см. 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

список / элементы=строка

список измененных параметров

Возвращено: успешно

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

Авторы

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

Ссылки на сборку

  • Система отслеживания ошибок
  • Репозиторий (источники)
  • Задать вопрос за помощью
  • Отправить отчет об ошибке
  • Запросить функцию
  • Общение

© 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

Spec-Zone.ru

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