informatique:reseau:ldap:authzproxy

no way to compare when less than two revisions

Différences

Ci-dessous, les différences entre deux révisions de la page.


informatique:reseau:ldap:authzproxy [2021/08/26 18:45] (Version actuelle) – créée bn8
Ligne 1: Ligne 1:
 +====== Authz proxy ======
 +
 +FIXME: présentation
 +
 +**Doc OpenLDAP :** https://www.openldap.org/doc/admin24/sasl.html#SASL%20Proxy%20Authorization
 +
 +===== Activation =====
 +
 +Il faut commencer par définir la politique du serveur en éditant l'objet //cn=config// et en ajoutant/modifiant l'attribut //olcAuthzPolicy// avec une des valeurs suivantes :
 +  - ''to'' : possibilité d'autoriser l'authentification proxy via l'attribut ''authzTo'' sur "les utilisateurs de service" (ceux qui ont le droit de se connecté en tant que quelqu'un d'autre).
 +  - ''from'' : possibilité d'autoriser l'authentification proxy via l'attribut ''authzFrom'' sur les utilisateurs autorisant la délégation (ceux en tant que qui on se connectera).
 +  - ''any'' : possibilité d'autoriser l'authentification proxy via l'un ou l'autre des attributs précédents
 +  - ''all'' : possibilité d'autoriser l'authentification proxy si les deux attributs précédents autorisent la déléguation
 +
 +Pour plus d'informations, lancer la commande ''man slapd-config'' et chercher ''olcAuthzPolicy''.
 +
 +Il faudra ensuite protéger via une ACL les attributs ''authzTo'' et ''authzFrom'', par exemple avec les ACLs suivantes (en première position) : <code>{0}to attrs=authzTo by dn.exact="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" manage by self read
 +{1}to attrs=authzFrom by dn.exact="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" manage by * read</code>
 +
 +<note important>L'utilisateur se connectant en tant qu'un autre doit avoir la possibilité de lire les attributs ''authzTo'' et/ou ''authzFrom'', d'où une règle autorisant la lecture pour tout le monde sur l'attribut ''authzFrom'' et l'utilisateur lui-même sur l'attribut ''authzTo''.</note>
 +
 +===== Configuration des autorisations =====
 +
 +**Exemple de configuration pour un utilisateur de service pouvant se connecter en tant que n'importe quel utilisateur en se basant sur un modèle de DN :**
 +  * ajouter la valeur suivante dans l'attribut ''authzTo'' de l'utilisateur de service : <code>{0}dn.regex:^uid=[^,]*,ou=people,o=ls$</code>
 +
 +FIXME : plein d'autres possibilités à documenter.
  
  • informatique/reseau/ldap/authzproxy.txt
  • Dernière modification : 2021/08/26 18:45
  • de bn8