Files
2026-01-25 00:41:19 -07:00

33 lines
844 B
YAML

- name: Render user LDIFs
template:
src: user.ldif.j2
dest: "/tmp/ldap-user-{{ user.uid }}.ldif"
mode: '0600'
loop: "{{ ldap_users }}"
loop_control:
loop_var: user
- name: Ensure users exist
community.general.ldap_entry:
dn: "uid={{ item.uid }},{{ ldap_people_ou }}"
state: present
objectClass:
- inetOrgPerson
- posixAccount
- ldapPublicKey
attributes:
cn: "{{ item.cn }}"
sn: "{{ item.sn }}"
uid: "{{ item.uid }}"
uidNumber: "{{ item.uidNumber }}"
gidNumber: "{{ item.gidNumber }}"
homeDirectory: "/home/{{ item.uid }}"
loginShell: /bin/bash
sshPublicKey: "{{ item.ssh_keys }}"
loop: "{{ ldap_users }}"
args:
server_uri: "{{ ldap_uri }}"
bind_dn: "{{ ldap_admin_dn }}"
bind_pw: "{{ ldap_admin_pw }}"
start_tls: yes