69 lines
2 KiB
Text
69 lines
2 KiB
Text
%set groups = {}
|
|
# Remote
|
|
%set %%acc = []
|
|
%for %%idx in %%range(3)
|
|
%set %%name = 'remote_test' + %%str(%%idx)
|
|
%%acc.append(('cn=' + %%name + ',' + %%ldapclient_base_dn, %%get_password(server_name=%%domain_name_eth0, username=%%name, description="remote account", type="cleartext", hide=%%hide_secret, temporary=True)))%slurp
|
|
%end for
|
|
%for %%remote in %%accounts.remotes
|
|
%set %%name = %%normalize_family(%%remote)
|
|
%%acc.append((%%accounts['remote_' + %%name]['dn_' + %%name], %%accounts['remote_' + %%name]['password_' + %%name]))%slurp
|
|
%end for
|
|
%for %%dn, %%password in %%acc
|
|
dn: %%dn
|
|
changetype: modify
|
|
replace: userPassword
|
|
userPassword:: %%ssha_encode(%%password)
|
|
|
|
%end for
|
|
# Users
|
|
%set %%users = %%ldap_user_dn
|
|
%for %%user in %%accounts.users.ldap_user_mail
|
|
%set %%userdn = 'cn=' + %%user + ',' + %%users
|
|
%%groups.setdefault('users', []).append(%%userdn)%slurp
|
|
dn: %%userdn
|
|
changetype: modify
|
|
#add: objectClass
|
|
#objectClass: inetLocalMailRecipient
|
|
#-
|
|
replace: mailLocalAddress
|
|
mailLocalAddress: %%user
|
|
%if %%user.ldap_user_aliases
|
|
%for %%alias in %%user.ldap_user_aliases
|
|
mailLocalAddress: %%alias
|
|
%end for
|
|
%end if
|
|
|
|
%end for
|
|
# Families
|
|
%for %%family in %%accounts.families
|
|
%set %%families = %%calc_ldapclient_base_dn(%%ldapclient_base_dn, %%family)
|
|
%for %%user in %%accounts['family_' + %%family]['users_' + %%family]['ldap_user_mail_' + %%family]
|
|
%set %%userdn = 'cn=' + %%user + ',' + %%families
|
|
%%groups.setdefault(%%family, []).append(%%userdn)%slurp
|
|
dn: %%userdn
|
|
changetype: modify
|
|
#add: objectClass
|
|
#objectClass: inetLocalMailRecipient
|
|
#-
|
|
replace: mailLocalAddress
|
|
mailLocalAddress: %%user
|
|
%if %%user['ldap_user_aliases_' + %%family]
|
|
%for %%alias in %%user['ldap_user_aliases_' + %%family]
|
|
mailLocalAddress: %%alias
|
|
%end for
|
|
%end if
|
|
|
|
%end for
|
|
%end for
|
|
# Groups
|
|
%set %%groupdn = %%ldap_group_dn
|
|
%for %%group, %%members in %%groups.items()
|
|
dn: cn=%%group,%%groupdn
|
|
changetype: modify
|
|
replace: member
|
|
%for %%member in %%members
|
|
member: %%member
|
|
%end for
|
|
|
|
%end for
|