Files
infra/ansible/roles/openldap_directory/tasks/groups.yaml

48 lines
1.3 KiB
YAML

#- name: Ensure LDAP groups exist
# community.general.ldap_entry:
# dn: "cn={{ item.name }},ou=groups,{{ ldap_basedn }}"
# state: present
# objectClass:
# - posixGroup
# attributes:
# cn: "{{ item.name }}"
# gidNumber: "{{ item.gid }}"
# loop: "{{ ldap_groups }}"
# args:
# server_uri: "{{ ldap_uri }}"
# bind_dn: "{{ ldap_admin_dn }}"
# bind_pw: "{{ ldap_admin_pw }}"
# start_tls: yes
#
- name: Ensure LDAP groups exist
community.general.ldap_entry:
dn: "cn={{ item.name }},ou=Groups,{{ ldap_basedn }}"
state: present
objectClass:
- top
- posixGroup
attributes:
cn: "{{ item.name }}"
gidNumber: "{{ item.gid | int }}"
loop: "{{ ldap_groups }}"
args:
server_uri: "{{ ldap_uri }}"
bind_dn: "{{ ldap_admin_dn }}"
bind_pw: "{{ ldap_admin_pw }}"
start_tls: yes
- name: Ensure group memberships are correct
community.general.ldap_attrs:
dn: "cn={{ item.name }},ou=Groups,{{ ldap_basedn }}"
attributes:
memberUid: "{{ item.members }}"
state: exact
loop: "{{ ldap_groups }}"
when: item.members is defined and item.members | length > 0
args:
server_uri: "{{ ldap_uri }}"
bind_dn: "{{ ldap_admin_dn }}"
bind_pw: "{{ ldap_admin_pw }}"
start_tls: yes