====== 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) : {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 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''. ===== 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 : {0}dn.regex:^uid=[^,]*,ou=people,o=ls$ FIXME : plein d'autres possibilités à documenter.