Définition de filtres d'attributs

Toutes les données connues de l'utilisateur peuvent être propagées vers les applications lorsque celles-ci valident l'authentification de l'utilisateur auprès du serveur EoleSSO.

Pour décider quelles informations seront renvoyées aux différentes applications, un système d'application de filtres a été mis en place. Le principe est de définir dans un fichier un ensemble d'attributs à renvoyer à une(des) application(s), ainsi que le nom à leur donner dans le cadre de ce filtre.

Ces fichiers sont à placer dans le répertoire /usr/share/sso/app_filters et doivent avoir le format suivant :

[section1]

libelle=variable

libelle2=variable2

....

[section2]

....

  • section sert à la mise en forme de la réponse (pour CAS, un nœud dans le XML retourné lors de la validation du ticket)
  • variable correspond à l'identifiant LDAP de la donnée utilisateur à récupérer
  • libelle est le nom qui sera utilisé pour présenter cette donnée dans la réponse du serveur

Le choix d'un filtre d'attribut est conditionné par l'adresse du service à atteindre (voir chapitre précédent). Il est également possible de créer dans le répertoire app_filters  des fichiers de filtres globaux dont les attributs seront ajoutés à tous les filtres.

Le format est le même, mais ces fichiers doivent avoir l'extension .global.

Dans le cas ou un attribut défini dans un filtre global existe également dans le filtre d'une application, c'est la définition spécifique à l'application qui sera prise en compte lors de l'envoi des attributs à celle-ci.

Attention

Si vous souhaitez appeler la méthode statique getUser(…) dans votre application il est impératif d'utiliser au minimum la correspondance user=uid dans votre filtre. Sinon l'authentification ne peut pas aboutir : CAS Authentification failed !

Exemple

Exemple de fichier de profil stocké dans /usr/share/sso/app_filters/mon_filtre.ini (correspond à l'exemple du paragraphe précédent).

[utilisateur]

user=uid

codeUtil=uidNumber

nom=sn

prenom=givenName

niveau=niveau

mail=mail

[etablissement]

codeRNE=rne

nomEtab=nom_etab

Complément

Si vous utilisez EoleSSO dans le cadre d'une distribution EOLE, un certain nombre de filtres et de définitions d'applications sont disponibles.

Il faut installer le paquet envole-conf-sso avec la commande apt-get install envole-conf-sso pour les récupérer.

Les filtres sont installés dans /usr/share/sso/filters_available et /usr/share/sso/applications/available.

Pour les utiliser, recopiez les fichiers voulus dans /usr/share/sso/app_filters et rechargez la configuration du service avec la commande service eole-sso reload