KB N°18 : Utilisation de Keycloak comme Identity Provider (IdP) avec OLFEO SaaS

Introduction

Cette KB explique comment configurer Keycloak en tant que fournisseur d’identité (IdP) pour OLFEO SaaS, via SAML. À l’issue de ces opérations, vos utilisateurs pourront se connecter à OLFEO en s’authentifiant sur Keycloak.

Prérequis

  1. Machine de synchronisation
    • Un serveur doté d’un agent de synchronisation Olfeo pour remonter les comptes utilisateurs.
  2. Alias DNS

Attention : Le cas ci-dessous représente si le Keycloak est configuré pour lire les emails par défaut

Préparation de l’agent de synchronisation

  1. Ouvrez la configuration de votre agent
  2. Modifiez la correspondance des attributs :

SAMAccountName → email


Création d’un realm dédié dans Keycloak
  1. Connectez-vous à la console d’administration Keycloak.
  2. Dans Master (en haut à gauche), cliquez sur Add realm.
  3. Donnez un nom explicite (ex. : olfeo-saas).

Configuration du client SAML
  1. Sélectionnez votre Realm nouvellement créé.
  2. Dans le menu de gauche, cliquez sur Clients, puis Create.
  3. Renseignez :
    • Client ID : lien de connexion olfeo
    • Client Type : saml
  4. Cliquez sur Save et suivez les étapes de configuration (Endpoints, Signature, etc.).

     

     

Important 

  • Dans l’onglet Keys, désactivez la signature de la clé d’authentification si vous rencontrez des erreurs 500.
  • Dans SAML Settings, réglez NameID Format sur email et activez Force NameID Format.

Récupération des métadonnées SAML

  1. Allez dans Realm Settings > Endpoints.
  2. Cliquez sur SAML 2.0 Identity Provider Metadata pour télécharger le fichier XML.
  3. Importez ce XML dans l’interface d’administration OLFEO SaaS

     

Conseil : ouvrez le fichier XML dans un éditeur de texte ou de code pour vérifier que le format est correct avant import.

Synchronisation des utilisateurs depuis Active Directory

  1. Dans votre Realm, ouvrez User Federation > Add provider > ldap.
  2. Remplissez :
    • Connection URL (ex. : ldap://ad.mondomaine.fr:389)
    • Bind DN et Bind Credential
    • User DN (le conteneur où sont stockés les comptes)
  3. Activez Read Only si vous ne souhaitez pas créer ou modifier des comptes depuis Keycloak.
  4. Cliquez sur Test connection puis Save.
  5. Lancez un Sync manuel pour vérifier l’import des utilisateurs.

Message de succès attendu :

 

 Vérifications et résolution d’erreurs

  • Email as username Dans Realm Settings > Login, activez Email as username pour utiliser l’adresse e-mail comme identifiant de connexion.
  • Erreur Invalid requester Si lors de la première connexion la mire Keycloak vous renvoie l’érreur Invalid requester, retournez dans Clients > Keys et désactivez la signature de la clé.