Note
This plugin is part of the community.general collection.
To install it use: ansible-galaxy collection install community.general
.
To use it in a playbook, specify: community.general.ldap_attrs
.
New in version 0.2.0: of community.general
The below requirements are needed on the host that executes this module.
Parameter | Choices/Defaults | Comments |
---|---|---|
attributes dictionary / required | The attribute(s) and value(s) to add or remove. The complex argument format is required in order to pass a list of strings (see examples). | |
bind_dn string | A DN to bind with. If this is omitted, we'll try a SASL bind with the EXTERNAL mechanism. If this is blank, we'll use an anonymous bind. | |
bind_pw string | The password to use with bind_dn. | |
dn string / required | The DN of the entry to add or remove. | |
ordered boolean |
| If yes , prepend list values with X-ORDERED index numbers in all attributes specified in the current task. This is useful mostly with olcAccess attribute to easily manage LDAP Access Control Lists. |
server_uri string | Default: "ldapi:///" | A URI to the LDAP server. The default value lets the underlying LDAP client library look for a UNIX domain socket in its default location. |
start_tls boolean |
| If true, we'll use the START_TLS LDAP extension. |
state string |
| The state of the attribute values. If present , all given attribute values will be added if they're missing. If absent , all given attribute values will be removed if present. If exact , the set of attribute values will be forced to exactly those provided and no others. If state=exact and the attribute value is empty, all values for this attribute will be removed. |
validate_certs boolean |
| If set to no , SSL certificates will not be validated.This should only be used on sites using self-signed certificates. |
Note
- 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
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
modlist list / elements=string | success | list of modified parameters Sample: [[2, "olcRootDN", ["cn=root,dc=example,dc=com"]]] |
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/general/ldap_attrs_module.html