Skip to main content
Keycloak est une plateforme à code source ouvert de gestion des identités et des accès qui assure l’authentification, l’autorisation et la fédération des utilisateurs pour les applications. Configurez Keycloak pour le fédérer à Auth0 B2B Connect à titre de ou afin d’ajouter l’ à votre pile d’authentification Keycloak existante.

Fonctionnement de l’authentification

  1. L’utilisateur amorce la connexion dans votre application.
  2. L’application envoie une demande d’authentification à Keycloak.
  3. Keycloak reconnaît l’utilisateur comme un utilisateur d’entreprise et achemine la demande vers Auth0 B2B Connect.
  4. Auth0 B2B Connect envoie une demande d’authentification au fournisseur d’identité d’entreprise de l’utilisateur (par exemple, Okta ou Microsoft Entra ID) au moyen de SAML ou d’OpenID Connect (OIDC).
  5. L’utilisateur s’authentifie auprès du fournisseur d’identité d’entreprise à l’aide de ses informations d’identification d’entreprise.
  6. Le fournisseur d’identité d’entreprise renvoie une assertion SAML ou un jeton OIDC à Auth0 B2B Connect.
  7. Auth0 B2B Connect effectue la découverte de domaine et transmet le résultat de la fédération à Keycloak.
  8. Keycloak émet un jeton à l’application.
  9. L’application valide le jeton, amorce sa session et accorde l’accès à l’utilisateur.

Informations requises

Configurer Auth0 B2B Connect

Pour créer une nouvelle intégration B2B Connect :
  1. Accédez à Auth0 Dashboard > Applications > B2B Connect, puis sélectionnez +Create Integration pour lancer l’assistant B2B Connect.
  2. Saisissez un Integration Name (par exemple, « Keycloak Production »).
  3. Sous Integration Type, sélectionnez Third-party Managed Authorization Server.
  4. Sélectionnez Save And Continue.
Assistant B2B Connect Entreprise dans le Auth0 Dashboard, nom de l'intégration

Sélectionner et configurer le protocole d’authentification

Dans l’assistant, vous avez le choix entre OIDC et SAML. Sélectionnez votre protocole d’authentification, puis suivez les étapes de configuration.
  1. Saisissez l’URL de rappel de l’application. Il s’agit du terminal de votre courtier Keycloak, selon le format suivant :
    Remplacez YOUR_ALIAS par l’alias du fournisseur d’identité que vous souhaitez utiliser dans Keycloak (par exemple, « oidc »).
  2. Sélectionnez Save And Continue.
  3. À l’écran de confirmation, sélectionnez Done pour terminer l’assistant.

Copier les informations d’identification depuis l’onglet Settings

Une fois l’assistant de configuration terminé, allez à l’onglet Settings de la page d’intégration. Copiez les valeurs suivantes, qui vous serviront lors de la configuration de Keycloak :
  • Client ID
  • Client Secret
  • URL d’émetteur

Configurer Keycloak

Ajouter un fournisseur d’identité

Dans la console d’administration Keycloak, sélectionnez votre domaine (realm), puis rendez-vous à Identity providers dans la barre latérale de gauche. Sous User-defined, sélectionnez :
  • OpenID Connect v1.0
  • SAML v2.0
  1. Attribuez à Alias la valeur que vous avez utilisée dans l’URL de rappel de l’application dans Auth0 (par exemple, « oidc »). Le Redirect URI en haut du formulaire est généré automatiquement à partir de cet alias.
  2. Définissez un Display name (par exemple, « Se connecter avec l’authentification unique »).
  3. Dans le champ Discovery endpoint, entrez votre URL d’émetteur tirée de l’onglet Paramètres de B2B Connect, suivie de .well-known/openid-configuration (par exemple, https://YOUR_TENANT.auth0.com/.well-known/openid-configuration).
  4. Entrez le Client ID tiré de l’onglet Paramètres de B2B Connect.
  5. Entrez le Client Secret tiré de l’onglet Paramètres de B2B Connect.
  6. Laissez Client authentication à sa valeur par défaut. Le Client Secret est envoyé dans le corps de la requête.
  7. Sélectionnez Add.
  8. Dans la page des paramètres du fournisseur, faites défiler jusqu’à OpenID Connect settings, puis déployez la section Advanced.
  9. Activez Pass login_hint.

Configurer la découverte du domaine d’origine (Home Realm Discovery)

Auth0 recommande de configurer la découverte du domaine d’origine (HRD) au moyen des Keycloak Organizations afin d’acheminer automatiquement les utilisateurs d’entreprise vers Auth0 en fonction de leur domaine de courriel.

Exemple d’acheminement des utilisateurs avec la HRD

Pour acheminer vers Auth0 B2B Connect tous les utilisateurs dont le courriel se termine par @acme.com :
  1. Allez à Configure > Realm settings et activez le bouton bascule Organizations.
  2. Sélectionnez Save.
  3. Dans la barre latérale de gauche, allez à Organizations et sélectionnez Create organization.
  4. Saisissez un Name (par exemple, « AcmeCorp »), réglez le Domain à acme.com, puis sélectionnez Save.
  5. Allez à l’onglet Identity providers et sélectionnez Link identity provider.
  6. Sélectionnez le fournisseur d’identité Auth0 dans la liste déroulante.
  7. Sous Domain, sélectionnez le domaine que vous avez ajouté (par exemple, acme.com).
  8. Activez Redirect when email domain matches.
  9. Sélectionnez Save.
Lorsqu’un utilisateur ayant un courriel @acme.com se connecte, Keycloak le redirige automatiquement vers Auth0 B2B Connect pour l’authentification.

Vérifier le fournisseur d’identité

  1. Ouvrez la page de connexion de votre application.
  2. Vérifiez que le bouton du fournisseur d’identité s’affiche avec le nom d’affichage que vous avez configuré.
  3. Sélectionnez-le et confirmez que vous êtes bien redirigé vers la page de connexion de votre fournisseur d’identité.