Aller au contenu principal

Mise en place du SSO avec un serveur d'authentification OpenID externe

Ce document a pour but de décrire le fonctionnement et la configuration de BlueMind avec un serveur d'authentification OpenID externe.

Prérequis

  • Avoir un serveur OpenID opérationnel
  • Avoir autorisé le client d'authentification BlueMind auprès du serveur OpenID.

Suite à la configuration, noter les informations suivantes qui serviront pour la configuration de BlueMind :

  • URL du server OpenID tiers
  • Identifiant du client OpenId (parfois nommé Application ID)
  • Secret du client OpenId

Fonctionnement de l'authentification OpenID

Pour une authentification initiale :

  1. L'utilisateur cherche à se connecter à BlueMind, qu'il ouvre dans son navigateur.
  2. Comme il n'a pas encore été authentifié, le serveur BlueMind le redirige vers le serveur OpenID pour qu'il s'authentifie.
  3. Une fois authentifié, un cookie openID est posé dans le navigateur de l'utilisateur, qui est redirigé vers BlueMind avec un ticket à valider.
  4. Le serveur BlueMind :
    1. voit ce ticket,
    2. demande au serveur openID s'il est valide,
    3. si c'est bien le cas, autorise la connection et pose un cookie BlueMind dans le navigateur.

Lors d'une prochaine authentification :

  1. Le client demande à nouveau l'accès au serveur BlueMind
  2. Comme il possède le cookie BlueMind, il est automatiquement authentifié tant que ce cookie est valide.

Configuration

  1. Dans la console d'administration, se rendre dans Gestion du système > Domaines supervisés > choisir le domaine > onglet Sécurité.

    ℹ️ Compte administrateur
    La procédure concerne la configuration du domaine, il est donc possible et préférable d'utiliser un compte administrateur de domaine plutôt que le superutilisateur admin0.

  2. Sélectionner le mode d'authentification OpenID dans le menu déroulant et renseigner les champs associés :

    • URL du server OpenID tiers : indiquer l'URL du serveur OpenID permettant de récupérer la liste des endpoints.
      Par exemple, sur Keycloak, c'est une URL de la forme : https://{openid-server}/realms/{realm}/.well-known/openid-configuration
      Remplacer:
      • {openid-server}par le nom d'hôte du serveur OpenID
      • {realm} par le realm configuré sur le serveur
    • Identifiant du client OpenId
    • Secret du client OpenId
  3. Cliquer sur "Enregistrer" pour sauvegarder les modifications.

Dès lors, les utilisateurs seront automatiquement redirigés vers le serveur OpenID lors de l'accès à la page d'authentification.

Pour aller plus loin

Consultez la documentation BlueMind en relation