installation: add roles synchronization from LDAP section (#52134)

This commit is contained in:
Serghei Mihai 2021-03-17 12:19:53 +01:00
parent 33453d81e3
commit 6f67d47a1f
1 changed files with 51 additions and 0 deletions

View File

@ -233,3 +233,54 @@ avec :
Cette commande ne doit rien afficher (ce qui signifie que tout s'est
bien déroulé), les comptes doivent être visibles dans
[https://connexion-moncompte.macollectivite.fr/manage/users/](https://connexion-moncompte.macollectivite.fr/manage/users/)
### Configuration de la synchronisation automatique des rôles des comptes LDAP
Dans le fichier */var/lib/authentic2-multitenant/tenants/connexion-moncompte.macollectivite.fr/settings.json*, pour l'annuaire des agents, rajouter les paramètres *group_filter* et *group_to_role_mapping*.
Le paramètre *group_filter* liste recursivement les groupes LDAP dont le compte est membre:
group_filter": "(&(objectClass=group)(member:1.2.840.113556.1.4.1941:={user_dn})(sAMAccountName=*))"
Le paramètre *group_to_role_mapping* contient une liste de paramètres au format suivant:
["cn=Group1,ou=Groups,dc=maville,dc=fr", ["slug-du-rôle1", "slug-du-rôle2"]]
où le pemier paramètre est le DN du groupe dans l'annuaire et le deuxième paramètre est la liste des slugs des rôles à attribuer.
Ainsi, le fichier de configuration aurait la forme suivante:
{
"LDAP_AUTH_SETTINGS": [
{
"realm": "mairie-macollectivite.fr",
"url": ["ldap://v-dc1.vnan.intra/", "ldap://v-dc2.vnan.intra/"],
"basedn": "OU=macollectivite,DC=vnan,DC=intra",
"binddn": "xxxxx@vnan.intra",
"bindpw": "xxxxx",
"user_filter": "(&(objectClass=user)(sAMAccountType=805306368)(|(mail=%s)(samaccountname=%s))(|(memberOf=CN=.LD_Agents_BO,OU=macollectivite,DC=vnan,DC=intra)(memberOf=CN=.LD_Agents_Publik,OU=macollectivite,DC=vnan,DC=intra)))",
"username_template": "{samaccountname[0]}@{realm}",
"update_username": true,
"active_directory": true,
"attributes": [
"mail",
"sAMAccountName",
"cn",
"sn",
"givenName",
"userPrincipalName"
],
"external_id_tuples": [["samaccountname"],["dn:noquote"]],
"shuffle_replicas": false,
"require_cert": "never",
"use_tls": false,
"set_mandatory_roles": ["Agent"],
"user_can_change_password": false,
"group_filter": "(&(objectClass=group)(member:1.2.840.113556.1.4.1941:={user_dn})(sAMAccountName=*))",
"group_to_role_mapping": [
["cn=Group1,ou=Groups,dc=maville,dc=fr", ["slug-du-rôle1", "slug-du-rôle2"]],
]
}
]
}