Authentification centralisée
Authentification par SINGLE SIGN-ON (SSO)
Le Single Sign-On (SSO) permet à un utilisateur de se connecter une seule fois et pouvoir réutiliser ces mêmes identifiants pour se connecter à plusieurs services.
Exemple le plus connu : Facebook. J’ai un compte Facebook avec identifiant + mot de passe. Je peux les réutiliser pour me connecter à d’autres sites. Je n’ai donc pas à mémoriser plusieurs mots de passe, un seul suffit.
Procédure de configuration Steeple/Microsoft Azure AD SSO
NOTE : il est impératif que le SSO soit configuré avec AzureAD pour pouvoir par la suite utiliser le provisioning via le protocole SCIM. Il est donc impossible de ne configurer que le provisioning avec Azure Active Directory. La configuration de Steeple ne le permet pas non plus.
Voici un guide détaillé concernant la mise en place du SSO entre Steeple et AzureAD. Il faut que les applications « discutent », il faut donc paramétrer à la fois Steeple et AzureAD.
Dans Azure :
Avant toute chose, il faut que l’annuaire Azure dispose d’une application « Steeple » (ou autre nom de votre choix). Ils font donc configurer l’annuaire de la façon suivante :
Identity > Applications > Enterprise Applications > + New Application > + Create your own application > Sélectionner "Integrate any other application you don't find in the gallery"
Appuyer sur « Create » pour créer l’application.
Après validation, vous serez redirigé vers cette interface :
L’application a été créée avec succès.
Dans Steeple :
L’étape suivante se fait dans Steeple :
Administration > Intégrations > Installer
Paramétrage du SSO sur Steeple :
Le nom du bouton de connexion SSO peut être paramétré. Si aucun nom n’est donné, «Connexion via SSO» s’affiche par défaut.
Les domaines réservés : il est possible de réserver des noms de domaine sur Steeple afin de les détecter sur la page login et afficher le bon bouton de connexion.
Exemple : il est possible de se connecter en SSO chez Steeple avec GSuite. Steeple a réservé le domaine steeple.fr
et, de ce fait, lorsqu’une adresse @steeple.fr
est entrée dans le champ e-mail du formulaire de login, le bouton « Se connecter avec GSuite » apparait automatiquement à la place du champ « Mot de passe ».
Une fois cette étape terminée, vous pouvez cliquer sur Passer à l’étape suivante.
La suite de la configuration est composée de plusieurs « allers-retours » entre les interfaces de Steeple et d’Azure.
Dans Steeple :
Accédez aux « métadonnées » dans Steeple. Il s’agit de liens fournis par Steeple à entrer dans Azure.
Dans Azure :
Les champs doivent correspondre dans Steeple et dans Azure. Il faut donc copier-coller ces liens dans les champs appropriés.
Allez dans Steeple | Overview > Single Sign-On > Basic SAML Configuration
Il faut modifier les données de l’étape n°1 avec les métadonnées de Steeple :
AzureAD proposera de tester la connexion. Il faut cliquer sur « I’ll try later ».
Il va également falloir modifier le « mapping » des données, en étape n°2.
Il faut ensuite modifier les champs. Voici la trame pour les « value » :
« value » : user.mail :
Name : email
Namespace : tout effacer
Source attribute : choisir user.mail OU user.userprincipalname
« value » : user.givenname :
Name : first_name
Namespace : tout effacer
Source attribute : user.givenname
« value » : user.surname :
Name : last_name
Namespace : tout effacer
Source attribute : user.surname
« value » : user.name :
Name : provider_identifier
Namespace : tout effacer
Source attribute : user.userprincipalname
Pour les systèmes avec plusieurs communautés :
Il faut également indiquer un attribut de groupe en cliquant sur « Add a group claim » :
Voici ce que vous devez voir à la fin du mapping (communautés classiques) :
Voici ce que vous devez voir à la fin du mapping (multiples communautés) :
Dans Steeple :
Une fois cette étape terminée, vous pouvez cliquer sur Passer à l’étape suivante. Vous arriverez alors à l'étape "3. Données de configurations communauté(s) fille(s)".
Configuration obligatoire en cas de multiples communautés :
Il faut associer les groupes Azure correspondants à vos communautés dans l’interface Steeple :
Vous trouverez l’id d’un groupe sur la page de ce dernier dans l’onglet « Properties » et vous pourrez copier l’object_id.
Cette étape est primordiale pour le bon fonctionnement du SSO chez Steeple.
Dans Azure :
Il faut ensuite passer à l’étape n°3 : SAML Sign-In Certificate :
A cette étape, Azure propose différentes données. Celle dont nous avons besoin s’appelle : "App Federation Metadata Url", qu’il suffit de copier en cliquant sur le petit logo à droite.
Dans Steeple :
Ensuite, retour sur l’interface de Steeple : ouvrez l'étape "2. Métadonnées" et remplissez le champ "Métadonnées de votre annuaire"
Dans Azure :
Avant de passer à la dernière étape de la configuration, il faut « assign » des utilisateurs à l’application créée sur AzureAD. Il s’agit tout simplement de « lister » les utilisateurs de l’annuaire qui auront accès à cette application et pourront s’y connecter.
Pour cela, il faut se rendre dans l’onglet « Users and Groups » sur la gauche puis cliquer sur « + Add User » : ajouter un ou plusieurs utilisateurs puis cliquer sur « Assign ».
Important : Bien veiller à ce que le profil de l’utilisateur connecté pour effectuer la configuration SSO dans Steeple, le « current user », soit bien présent dans la liste et assigné à l’application dans Azure.
La configuration SSO est maintenant terminée. Il faut maintenant Enregistrer la configuration.
Sur Azure, en étape 5, vous pouvez tester cette configuration.
Azure va lancer l’authentification test dans un nouvel onglet puis rediriger vers l’interface AzureAD pour signaler si le test est positif ou négatif :
Un bouton de connexion est maintenant disponible pour se connecter :
Questions diverses
Que se passe-t-il si je me connecte en SSO alors que je me connectais auparavant de manière classique ?
- Mon adresse e-mail est la même que mon compte Microsoft avec lequel je me connecte : rien ne se passe. Mon mode d’authentification change, mais mon compte n’est pas modifié, je peux continuer à utiliser Steeple comme je le faisais avant.
- Mon adresse e-mail chez Steeple est différente de celle de mon compte Microsoft avec lequel je souhaite me connecter en SSO : cela va me créer un autre compte. Il faut donc changer d’adresse email afin de bénéficier de ce type d’authentification.