Au cours de nos supports, vous avez souvent posé la question de comment configurer votre ezproxy pour qu’il enrichisse directement les logs avec des informations de profil tirées de l’annuaire LDAP de votre établissement. Cet enrichissement “à la source” permet d’économiser une étape de traitement supplémentaire, avant ou après ezPaarse (par exemple par l’utilisation d’un script partagé par notre collègue de l’université de Brest en 2015 que certains ont déjà mis en œuvre).
Voici donc un exemple de configuration qui permet d’effectuer cet enrichissement.
Il vous faudra repérer les attributs et les valeurs à utiliser dans l’annuaire LDAP. Puis les 3 fichiers suivants sont à modifier dans EZProxy :
-
user.txt,
-
ldap.txt
-
config.txt.
Modification du fichier user.txt
Vous gardez l’authentification CAS, et vous capturez le login de l’utilisateur (login:user) que vous mettrez dans une autre variable (session:uid) pour utilisation avec le fichier ldap.txt.
Dans le fichier ldap.txt, vous définissez les règles à mettre en place selon les attributs.
::CAS LoginURL https://cas.univ-XXXXX.fr/cas/login ServiceValidateURL https://cas.univ-XXXXX.fr/cas/serviceValidate Set session:uid = login:user Set UserFile("ldap.txt"); /CAS
Modification du fichier ldap.txt
::LDAP Set login:user = session:uid BindUser cn=nom_utilisateur_qui fait_la_requete,ou=applis,dc=univ-XXXXX,dc=fr BindPassword -Obscure *************************** IgnorePassword URL ldap://ldap.univ-XXXXX.fr/OU=people,DC=univ-XXXXX,DC=fr?uid?sub?(objectClass=eduPerson) #Groupe non authentifié IfUnauthenticated; Group +NoLogin #Groupe Local pour IP internes IfIP 10.0-255.0-255.0-255; Group +Local-Default #Groupes Biatss Profs Etudiants selon critères LDAP IfTest eduPersonPrimaryAffiliation employee; Group +Biatss-Default IfTest eduPersonPrimaryAffiliation faculty; Group +Profs-Default IfTest eduPersonPrimaryAffiliation member; Group +Profs-Default IfTest eduPersonPrimaryAffiliation student; Group +Etudiants-Default #Groupe REX et Collegium santé - Pas d'accès à distance IfTest -Wild employeeNumber VT*; Group +Rex-Default IfTest UFRcodeComposante J00; Group +Rex #Groupes pour les stats Composantes IfTest UFRcodeComposante B30; Group +IUT_XXX IfTest UFRcodeComposante D07; Group +DESS IfTest UFRcodeComposante DB0; Group +Droit_XXXX IfTest UFRcodeComposante FC0; Group +Formation_continue (...) /LDAP
Modification du fichier config.txt
# Ajout des attributs des groupes LogFormat %h %l %u %t "%r" %s %b %{ezproxy-groups}i # **************************** Database Definitions ***************************************** # Autorisation aux bases selon ces groupes (cf /usr/local/ezproxy/ldap.txt) # Les groupes sont définis par des attributs ldap # Les personnes dans REX ne sont pas autorisées à distance mais sur site par le group Local Group Rex #aucune database definition Group Local+Biatss+Profs+Etudiants # database definition pour les groupes Local+Biatss+Profs+Etudiants Title Research Database URL http://www.researchdb.com DJ researchdb.com ....
Paramétrage d’ezPAARSE pour intégrer les nouveaux champs LDAP
Il ne reste plus qu’à adapter votre paramétrage du format de logs dans ezPAARSE pour qu’il puisse reconnaître et tenir compte de ces nouveaux champs de profil !
%h %l %u %t "%r" %s %b %{group}<.*>
(ce prédéfini est relativement générique et peut être rendu plus spécifique en fonction des champs rapatriés)
Nous remercions chaleureusement notre collègue Gérard Bruère, DSI – Responsable Informatique du SCD de l’université de Tours pour ces éléments !
Thomas Porquet pour ezTEAM