Page en cours de relecture

5. Test du SP Shibboleth

Vous allez maintenant valider le bon fonctionnement de votre fournisseur de services dans le cadre de la fédération Éducation-Recherche de test. Il s'agit d'une infrastructure destinée uniquement à des usages de type test.

5.1. Enregistrement dans la fédération de test

Vous devez d'abord enregistrer votre fournisseur en le décrivant techniquement auprès de la fédération de test. Les éléments techniques fournis seront publiés dans les méta-données et permettront à votre fournisseur de services d'interagir avec les fournisseurs d'identités.
Le guichet de la fédération vous permet d'effectuer cet enregistrement : https://federation.renater.fr/registry. Ce formulaire requiert une authentification préalable. Vous pouvez vous authentifier soit avec un compte CRU soit via votre fournisseur d'identités si vous êtes rattaché à un établissement inscrit comme fournisseur d'identités dans la fédération Éducation-Recherche.

Renseignez les différents onglets du formulaire, la signification des champs y est décrite :

FIXME : revoir les champs du formulaire


  • Onglet Description

Intitulé du service: TP fédération : Service de test monposte.fr
Intitulé du service (en anglais): TP fédération : Service de test monposte.fr
URL du service : https://monposte.fr/secure
Description du SP : TP fédération : Service de test
Description du SP (en anglais) : TP fédération : Service de test

  • Onglet Rattachement à un organisme

Rattachement à un organisme : ne pas renseigner

  • Onglet Contacts

Contact technique 1 nom : votre nom
email : votre email institutionel

  • Onglet Attributs demandés

Pays où les données sont traitées : cocher la case “les données sont traitées en France ou dans un autre pays de l'UE“
Conformité au Data Protection Code of Conduct eduGAIN : ne pas cocher la case “ce service est conforme aux règles du Code of Conduct“
Public(s) concerné(s) par le service : ressource locale
Catégorie du service : outils collaboratifs
Attributs :

  displayName (cocher la bouton radio "obligatoire oui" et remplisser le champs "Quel usage comptez-vous faire de cet attribut" avec "personnalisation" \\
  email (cocher la bouton radio "obligatoire oui" et remplisser le champs "Quel usage comptez-vous faire de cet attribut" avec "identifiant" \\
  eduPersonPrincipalName (cocher la bouton radio "obligatoire oui" et remplisser le champs "Quel usage comptez-vous faire de cet attribut" avec "identifiant" \\
  • Onglet Informations techniques

URL de vos méta données : https://monposte.fr/Shibboleth.sso/Metadata
Les valeurs des autres champs seront automatiquement extraites du fichier de méta-données de votre SP. Il n'est donc pas nécessaire de les renseigner.



Vous devez maintenant rattacher votre SP à la fédération de Test via le guichet.

  • Depuis la page “Gérer vos entités SAML”,
  • cliquez sur le rond noir
  • cliquez sur le lien “Inscription” en face de la Fédération de Test

Votre SP est maintenant dans la Fédération de Test. Un délai peut être nécessaire pour la prise en compte de la dernière version des méta-données de la fédération de Test par les IdPs (30 minutes maximum).

  • Si vous avez besoin plus tard de modifier les informations saisies dans ce formulaire, vous pourrez le faire via le guichet de la fédération https://federation.renater.fr/registry.
  • l'IdP de Test proposé par RENATER ne prend pas en compte dynamiquement les méta-données de la fédération de Test ; il les recharge les méta-données toutes les 15 minutes. Si vous tentez une authentification trop tôt après l'enregistrement de votre SP dans la Fédération de Test, l'IdP de Test vous renverra une erreur Unable to locate relying party….

5.2. Test dans la fédération de test

Une fois que vous avez validé le formulaire, votre fournisseur de services est automatiquement enregistré dans la fédération de test. Vous pouvez maintenant essayer d'accéder à votre fournisseur de services sur https://monposte.fr/secure avec un navigateur :

  • Votre fournisseur de services Shibboleth va directement vous rediriger vers le service de découverte (DS/WAYF) déclaré dans le fichier de configuration shibboleth2.xml ;
  • Dans le menu déroulant sélectionnez comme fournisseur d'identités Fédération Éducation-Recherche - IdP de Test ;
  • Authentifiez-vous avec le compte de test (utilisateur: etudiant1, mot de passe: etudiant1) ;
  • Vous êtes redirigé vers votre fournisseur de services qui doit afficher la liste des informations transmises par le SP Shibboleth. Exemple avec le compte de test :
all SHIB headers- (HTTP_SHIB_ATTRIBUTES is not shown in this list)
(REMOTE_USER) etudiant1@renater.fr
...
cnDupont Jean
displayName Jean Dupont
entitlement urn:mace:dir:entitlement:common-lib-terms
eppn etudiant1@renater.fr
facsimileTelephoneNumber 0102030405
givenName Jean
l Paris
mail jean.dupont@univ-test.fr
nickname Jean
o univ-test
org-dn dc=univ-test,dc=fr
orgunit-dn o=maths,dc=univ-test,dc=fr
ou maths
preferredLanguage FR
primary-affiliation student
primary-orgunit-dn o=maths,dc=univ-test,dc=fr
sn Dupont
supannActivite {CNU}5404
supannAutreTelephone 1234567890
...

Vous remarquerez que :

  • la variable REMOTE_USER prend la valeur de l'identifiant institutionnel (aussi appelé eduPersonPrincipalName ou eppn), cf élément ApplicationDefaults/REMOTE_USER de shibboleth2.xml.
  • certaines variables sont préfixées par Shib- ; il s'agit de variables internes positionnées automatiquement par la brique Shibboleth.
  • l'intitulé de chaque variable est paramétrable dans le fichier /etc/shibboleth/attribute-map.xml.


Nativement, Shibboleth propose une fonctionnalité d'affichage de tous les attributs utilisateurs de la session courante. Il suffit d'accéder à l'URL https://monposte.fr/Shibboleth.sso/Session. Pour afficher les valeurs des attributs lors de l'accès à ce script mettez, dans le fichier /etc/shibboleth/shibboleth2.xml l'option suivante à « true » (false par défaut) :

shibboleth2.xml
 <Handler type="Session" Location="/Session" **showAttributeValues="true"**/>

Prévoir un redémarrage du service shibd pour la prise en compte des modifications dans le fichier shibboleth2.xml

$ systemcl restart shibd

Dans les version 1.x du SP Shibboleth, ces variables d'environnement étaient, par défaut, préfixées par HTTP_SHIB_ car elles étaient transmises sous formes d'entêtes HTTP.

Si le fournisseur de services ne présente pas tous les attributs de l'utilisateur, vous pouvez en chercher la cause en consultant les logs de votre SP (/var/log/shibboleth/shibd.log) ainsi que les logs du fournisseur d'identités de test https://test.federation.renater.fr/viewlogs?fournisseur=idp-test-error

5.2.1. Erreurs courantes

Erreur « Unknown service provider » : une erreur qui arrive fréquemment (sur la page d'URL de l'IdP). En général elle est due à une différence entre la valeur de entityID déclarée dans les méta-données via le formulaire web et la valeur de l'attribut entityID déclarée dans la configuration shibboleth2.xml. Veillez à ce qu'il n'y ait aucune différence de caractère entre ces deux valeurs (http vs https, sans slash à la fin vs avec slash à la fin, etc.). Si c'est le cas corrigez votre déclaration dans la configuration shibboleth2.xml, relancez le démon shibd, supprimez vos cookies, puis retestez.

Erreur « Unable to locate metadata for identity provider (https://idp.example.org/shibboleth) » : vous avez probablement oublié de commenter l'élément de configuration SSO/entityID dans le fichier shibboleth2.xml par défaut.