Interconnexion Shibboleth

Préambule

L'interconnexion de l'application LockSelf à une fédération d'identité se fait via le protocole SAMLv2. Il est donc possible d'interconnecter l'application avec votre IDP Shibboleth.

Attention, suivant l'installation faite et la version de Shibboleth utilisée, les éléments proposés pourraient légèrement varier.

Étape 1 : Déposer sur LockSelf les metadatas de l'IDP

Cette première étape consiste à récupérer le fichier de metadatas issu de votre IDP.

Récupérez l'URL ou le fichier metadatas, et renseignez-le dans l'application LockSelf. Pour cela, consultez cette documentation : Configuration de l'interconnexion SSO (cloud privé uniquement)

Étape 2 : Récupérer les metadatas de l'application

Une fois votre fichier de metadatas issus de votre IDP déposé sur LockSelf, vous pourrez récupérer les metadatas de l'application qui vous serviront à créer le connecteur à l'URL suivante : 

https://FQDN/saml2/metadata

(où FQDN remplace le nom de domaine de votre installation LockSelf)

Étape 3 : Adapter le fichier metadata-providers.xml

Cette troisième étape va permettre d'ajouter LockSelf à votre liste de service provider.

Il faudra donc ajouter dans ce fichier l'élément suivant : 

<MetadataProvider id="LockSelf"
xsi:type="FileBackedHTTPMetadataProvider"
backingFile="%{idp.home}/metadata/lockself-metadata.xml"
disregardTLSCertificate="true"
metadataURL="https://FQDN/saml2/metadata">
</MetadataProvider>
  • "BackingFile" doit correspondre au path où peut être récupéré les metadatas de l'application LockSelf (récupéré à l'étape 2)
  • "MetadataURL" doit correspondre à l'URL d'accès aux metadatas LockSelf. FQDN est à remplacer par le nom de domaine choisi pour votre installation

Étape 4 : Préparer les attributs

Vous devez maintenant préparer les attributs qui seront envoyés par l'IDP à l'application. Pour rappel, les trois attributs à envoyer sont :

  • firstname (contenant le prénom de l'utilisateur)
  • lastname (contenant le nom de l'utilisateur)
  • mail (contenant l'email de l'utilisateur)

Dans le fichier attribute-filter.xml, vous allez devoir créer ces attributs si ceux-ci ne sont pas définis. Par exemple : 

<AttributeFilterPolicy>
<AttributeRule attributeID="firstname">
<PermitValueRule xsi:type="ANY" />
</AttributeRule>
<AttributeRule attributeID="lastname">
<PermitValueRule xsi:type="ANY" />
</AttributeRule>
<AttributeRule attributeID="mail">
<PermitValueRule xsi:type="ANY" />
</AttributeRule>
</AttributeFilterPolicy>

Étape 5 : Bind des attributs

Une fois que les attributs sont créés et utilisables, vous allez devoir créer les règles qui vont permettre de binder les attributs d'un utilisateur au nom attendu par l'application LockSelf.

Pour ce faire, vous allez devoir modifier le fichier attribute-resolver-ldap.xml et vous baser sur l'exemple ci-dessous :

<!-- LockSelf -->
<resolver:AttributeDefinition xsi:type="ad:Simple" id="firstname" sourceAttributeID="givenName">
<resolver:Dependency ref="myLDAP" />
<resolver:AttributeEncoder xsi:type="enc:SAML2String" name="firstname" />
</resolver:AttributeDefinition>

<resolver:AttributeDefinition xsi:type="ad:Simple" id="lastname" sourceAttributeID="sn">
<resolver:Dependency ref="myLDAP" />
<resolver:AttributeEncoder xsi:type="enc:SAML2String" name="lastname" />
</resolver:AttributeDefinition>

<resolver:AttributeDefinition xsi:type="ad:Simple" id="mail" sourceAttributeID="mail">
<resolver:Dependency ref="myLDAP" />
<resolver:AttributeEncoder xsi:type="enc:SAML2String" name="mail" />
</resolver:AttributeDefinition>
  • "sourceAttributeID" correspond aux valeurs issues de votre IDP. Il faudra adapter cette valeur suivant la configuration de cet IDP

Étape 6 : Vérifier la connexion

Une fois ces étapes réalisées, vous allez pouvoir tester le connecteur :

  • Etape 1 : Afin de pouvoir tester correctement, ouvrez une navigation privée et rendez-vous sur l'URL de votre infrastructure (https://FQDN/?sso). Si vous utilisez l'extension navigateur, cliquez sur la roue crantée, puis sur « Vider le cache ».

  • Etape 2 : Sur l'onglet SSO, renseignez votre email dans le champ affiché ou cliquez directement sur le bouton « Me connecter ».
  • Etape 3 : Vous allez à cette étape être redirigé sur le portail SSO Shibboleth de votre organisation où vous pourrez vous authentifier.

  • Etape 4 : Une fois authentifié, vous serez redirigé sur LockSelf, qui vous demandera de créer le code PIN associé à votre compte.

Consultez cette documentation si besoin : La connexion SSO (Single Sign-On).

Étape 7 : Mettre à jour le connecteur

Une mise à jour des certificats de signature/chiffrement de jetons doit parfois être effectuée sur le connecteur Shibboleth.

Dans ce cas, il faudra mettre à jour le nouveau fichier metadatas de l'IDP, dans l'onglet Paramètres du compte Administrateur, sur le module SSO. Pour cela, consultez cette  documentation : Configuration de l'interconnexion SSO.

Mise à jour