6.9.7. Autorisation et Chargement de groupes avec LDAP
memberOf
; une entité du groupe peut mapper les utilisateurs lui appartenant par les attributs uniqueMember
; ou les deux mappages peuvent être maintenus dans le serveur LDAP.
force
est défini à «false». Quand force
est défini à true, la recherche a lieu à nouveau en cours d'autorisation (pendant le chargement des groupes). Cela est normalement effectué quand des serveurs différents effectuent l'authentification et l'autorisation.
Important
force
. Il est requis, même quand défini à la valeur par défaut false
.
username-to-dn
username-to-dn
indique comment mapper le nom d'utilisateur au nom distinctif de son entrée dans le répertoire LDAP. Cet élément n'est requis que lorsque les deux énoncés suivants sont véréfiées :
- Les étapes d'authentification et d'autorisation sont effectués sur deux serveurs LDAP distincts.
- La recherche de groupe utilise un nom distinctif.
- 1:1 username-to-dn
- Ceci indique que le nom d'utilisateur saisi par l'utilisateur distant est le nom distinctif de l'utilisateur.
<username-to-dn force="false"> <username-is-dn /> </username-to-dn>
<username-to-dn force="false"> <username-is-dn /> </username-to-dn>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Ceci définit un mappage 1:1, et il n'y a pas de configuration supplémentaire possible. - username-filter
- La prochaine option est très semblable à la simple option décrite ci-dessus dans l'étape d'authentification. Un attribut est spécifié et on recherche une correspondance avec le nom d'utilisateur fourni.
<username-to-dn force="true"> <username-filter base-dn="dc=people,dc=harold,dc=example,dc=com" recursive="false" attribute="sn" user-dn-attribute="dn" /> </username-to-dn>
<username-to-dn force="true"> <username-filter base-dn="dc=people,dc=harold,dc=example,dc=com" recursive="false" attribute="sn" user-dn-attribute="dn" /> </username-to-dn>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Les attributs pouvant être définis sont les suivants :base-dn
: le nom distinctif du contexte pour commencer la recherche.recursive
: indique si la recherche va s'étendre à des sous-contextes. La valeur par défaut estfalse
.attribute
: l'attribut de l'entrée de l'utilisateur à faire correspondre avec le nom d'utilisateur fourni. La valeur par défaut estuid
.user-dn-attribute
: l'attribut à lire pour obtenir les noms distinctifs d'utilisateurs. La valeur par défaut estdn
.
- advanced-filter
- L'option finale est de spécifier un filtre avancé. Comme dans la section authentification, c'est l'opportunité d'utiliser un filtre personnalisé pour trouver le nom unique de l'utilisateur.
<username-to-dn force="true"> <advanced-filter base-dn="dc=people,dc=harold,dc=example,dc=com" recursive="false" filter="sAMAccountName={0}" user-dn-attribute="dn" /> </username-to-dn>
<username-to-dn force="true"> <advanced-filter base-dn="dc=people,dc=harold,dc=example,dc=com" recursive="false" filter="sAMAccountName={0}" user-dn-attribute="dn" /> </username-to-dn>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Pour les attributs qui correspondent à ceux du username-filter, le sens et les valeurs par défaut sont les mêmes. Cela laisse un nouvel attribut :filter
: filtre personnalisé utilisé pour chercher une entrée d'utilisateur quand le nom d'utilisateur est substitué dans l'espace réservé{0}
Important
Le code XML doit rester valide une fois que le filtre est défini donc si des caractères spéciaux comme&
sont utilisés, assurez-vous que la forme qui convient soit utilisée. Par exemple,& amp ;
pour le caractère&
.
La recherche Groupe
Exemple 6.1. Principal à Groupe - Exemple LDIF
TestUserOne
, qui est membre de GroupOne
, et GroupOne
est à son tour membre de GroupFive
. L'appartenance au groupe est démontrée par l'utilisation d'un attribut memberOf
défini au nom unique du groupe dont l'utilisateur est membre.
memberOf
définis, un pour chaque groupe dont l'utilisateur est un membre direct.
Exemple 6.2. Groupe à Principal - Exemple LDIF
TestUserOne
qui est un membre de GroupOne
, à son tour membre de GroupFive
- cependant dans ce cas, c'est un attribut uniqueMember
du groupe de l'utilisateur utilisé pour la référence croisée.
Recherche de groupe standard
<group-search group-name="..." iterative="..." group-dn-attribute="..." group-name-attribute="..." > ... </group-search>
<group-search group-name="..." iterative="..." group-dn-attribute="..." group-name-attribute="..." >
...
</group-search>
group-name
: cet attribut est utilisé pour indiquer le formulaire qui doit être utilisé pour le nom de groupe retourné correspondant à la liste de groupes dont l'utilisateur est membre. Cela peut être sous la simple forme de nom du groupe ou de nom unique de groupe. Si le nom unique est nécessaire, cet attribut peut être défini àDISTINGUISHED_NAME
. Valeur par défautSIMPLE
.itérative
: cet attribut est utilisé pour indiquer si, après avoir identifié les groupes qui appartiennent à un utilisateur, on doit rechercher également de manière itérative basée sur les groupes afin d'identifier quels groupes appartiennent à quels groupes. Si la recherche itérative est activée, nous continuons jusqu'à ce que nous rejoignions un groupe qui ne soit pas membre si aucun autre groupe ou cycle n'est détecté. Par défaut,false
.
Important
group-dn-attribute
: sur une entrée pour un groupe dont l'attribut est son nom unique. La valeur par défaut estdn
.group-name-attribute
: sur une entrée pour un groupe dont l'attribut est son simple nom. La valeur par défaut estuid
.
Exemple 6.3. Configuration d'exemple de Principal à Groupe
memberOf
de l'utilisateur.
principal-to-group
a été ajouté avec un seul attribut.
group-attribute
: le nom de l'attribut sur l'entrée d'utilisateur qui correspond au nom unique du groupe qui appartient à l'utilisateur. La valeur par défaut estmemberOf
.
Exemple 6.4. Configuration d'exemple de Groupe à Principal
group-to-principal
est ajouté ici. Cet élément est utilisé pour définir comment les recherches de groupes qui référencent l'entrée de l'utilisateur seront exécutées. Les attributs suivants sont définis :
base-dn
: le nom unique du contexte à utiliser pour commencer la recherche.recursive
: indique si les sous-contextes peuvent également être recherchés. La valeur par défaut estfalse
.search-by
: Le forme du nom de rôle utilisé dans les recherches. Valeurs validesSIMPLE
etDISTINGUISHED_NAME
. Valeur par défautDISTINGUISHED_NAME
.
principal-attribute
: le nom de l'attribut d'entrée de groupe qui référence l'entrée utilisateur. La valeur par défaut estmember
.