Configurer OIDC avec Keycloak

Cette page explique comment intégrer Keycloak comme fournisseur d’identité OpenID Connect (OIDC) pour authentifier vos utilisateurs sur Reemo.

Note

Selon votre mode de déploiement, l’activation SSO peut se faire au niveau de l’instance (Private Cloud / On-Prem) ou au niveau de l’organisation (Public Cloud).
Les captures d’écran et libellés peuvent varier légèrement selon vos versions d’interface.

Configurer SSO dans Reemo

Cas 1 : Activation au niveau de l’instance (Private Cloud / On-Prem)
Depuis verified_user Zone d’administration > dashboard Général > passkey Connecteurs SSO, configurez SSO pour l’instance.
Accéder aux Connecteurs SSO dans la Zone d'administration de l'instance

Accéder à Connecteurs SSO dans la Zone d’administration de l’instance.

Cas 2 : Activation au niveau de l’organisation (Public Cloud)
Depuis domain Organisation > dashboard Général > passkey Connecteurs SSO, configurez SSO pour cette organisation.
Accéder aux Connecteurs SSO au niveau de l'organisation

Configurer SSO dans Organisation > Connecteurs SSO.

Créer le connecteur OIDC côté Reemo

  1. Depuis verified_user Zone d’administration > domain Organisations, sélectionnez votre organisation, puis accédez à dashboard Général > passkey Connecteurs SSO et cliquez sur Nouveau connecteur > Nouveau connecteur OIDC.

  2. Renseignez le Nom convivial (ex. Keycloak). Les champs Issuer URL, Client ID et Client Secret seront complétés après la configuration Keycloak.

Formulaire de création du connecteur OIDC

Formulaire de création du connecteur OIDC.

  1. Cliquez sur Créer pour générer l’URL de callback du connecteur. Vous en aurez besoin dans Keycloak.

Récupération de l'URL de callback OIDC

Copier l’URL de callback générée par le connecteur OIDC.

Configurer le client OIDC dans Keycloak

  1. Connectez-vous à votre Admin Console Keycloak et sélectionnez le Realm cible.

  2. Dans Clients > Create client, choisissez OpenID Connect et renseignez un Client ID (ex. reemo-api).

  3. À l’étape Capability config :

    • Client authentication : On (client confidentiel — Reemo utilise un client secret).

    • Standard flow : activé (Authorization Code Flow).

  4. Dans Access settings > Valid redirect URIs, collez l’URL de callback du connecteur Reemo.

Paramètres du client OIDC Keycloak

Renseigner le Client ID et l’URL de callback dans Valid redirect URIs.

  1. Ouvrez l’onglet Credentials et copiez le Client secret.

Client secret du client OIDC Keycloak

Récupérer le Client secret dans l’onglet Credentials.

  1. Notez l’Issuer, au format :

    https://[keycloak_url]/realms/[realm]
    

Compléter le connecteur OIDC dans Reemo

Complétez le connecteur avec les informations Keycloak :

  • Issuer URL : https://[keycloak_url]/realms/[realm]. Reemo découvre automatiquement les endpoints via <issuer>/.well-known/openid-configuration.

  • Client ID et Client Secret récupérés dans Keycloak.

  • Scopes : laissez vide pour utiliser openid profile email par défaut.

  • Attributs (optionnel) : laissez vide pour utiliser les attributs OIDC standard (preferred_username, email, name).

Compléter le connecteur OIDC dans Reemo

Renseigner Issuer URL, Client ID et Client Secret, puis activer le connecteur.

Activez le connecteur (case Enabled) puis cliquez sur Update (ou Create) pour enregistrer.

Déclarer les utilisateurs

Deux approches sont possibles pour donner l’accès SSO aux utilisateurs.

Approche A : Provisionnement explicite depuis l’organisation
Depuis verified_user Zone d’administration > domain Organisations, sélectionnez votre organisation, puis accédez à inventory_2 Inventaire > person Utilisateurs et cliquez sur Nouvel utilisateur > Provisionner un utilisateur SAML pour ajouter des utilisateurs en renseignant leur e-mail.
Menu Nouvel utilisateur avec l'option Provisionner un utilisateur SAML

Choisir Provisionner un utilisateur SAML depuis le menu Nouvel utilisateur.

Le même bouton provisionne les utilisateurs SAML et OIDC.

Approche B : Just-In-Time (JIT) Provisioning
Depuis verified_user Zone d’administration > domain Organisations, sélectionnez votre organisation, puis accédez à dashboard Général > passkey Connecteurs SSO, cliquez sur le connecteur puis activez Provisionnement Juste-à-Temps activé : les comptes sont créés automatiquement lors de la première connexion réussie.
Option Just In Time Provisioning du connecteur OIDC

Activer Just In Time Provisioning pour créer les comptes à la première connexion.

Gérer les droits dynamiquement depuis l’annuaire

Reemo peut lire l’appartenance de chaque utilisateur à un groupe et affecter automatiquement l’accès aux collections correspondantes.

Dans Keycloak

  1. Ouvrez votre client (ex. reemo-api), onglet Client scopes > cliquez sur le scope dédié (ex. reemo-api-dedicated) > Add mapper > By configuration > Group Membership.

  2. Configurez le mapper :

    • Name : un libellé (ex. groups).

    • Token Claim Name : groups.

    • Full group path : Off.

Warning

Le Token Claim Name doit correspondre au nom d’attribut saisi côté Reemo (groups). En OIDC, Reemo lit le claim exactement sous ce nom (pas de correspondance par URI comme en SAML).

Dans Reemo

  1. Ouvrez la fiche du connecteur OIDC (Zone d’administration > Général > Connecteurs SSO), section Mappage supplémentaire.

  2. Dans le champ Collections, saisissez le nom du claim de groupe (ex. groups), puis cliquez sur Mettre à jour.

Section Mappage supplémentaire du connecteur

Saisir le nom du claim de groupe dans le champ Collection du Mappage supplémentaire.

  1. Dans Inventaire > Collections, éditez une collection et renseignez le champ SSO Mapping Identifier avec le nom du groupe correspondant.

Se connecter via OIDC

Une fois le connecteur actif et les utilisateurs déclarés (ou JIT activé), vos utilisateurs choisissent l’onglet OIDC sur l’écran de connexion, sélectionnent le connecteur et sont redirigés vers Keycloak.

Onglet OIDC sur l'écran de connexion

Sélectionner l’onglet OIDC puis le connecteur pour être redirigé vers Keycloak.