Authentification unique (SSO) Keycloak pour Magento 2 | Connexion à Magento via l'authentification unique avec les identifiants Keycloak
Marché
Le manteau de clé Magento SSO Cette extension permet une connexion sécurisée et fluide à votre boutique Magento en utilisant Keycloak comme fournisseur OAuth et OpenID Connect. Grâce à l'authentification unique (SSO) Keycloak pour Magento, les utilisateurs peuvent accéder à la boutique avec leurs identifiants Keycloak. Ainsi, grâce à notre extension, les utilisateurs de votre compte Keycloak peuvent se connecter à votre boutique Magento 2 avec leurs identifiants Keycloak.
Notre Connexion Keycloak à Magento 2 L'extension Keycloak SSO offre une intégration sécurisée avec des fonctionnalités avancées telles que le mappage des attributs et des rôles, ainsi que le contrôle d'accès. Elle renforce la sécurité de votre site Magento en garantissant que seuls les utilisateurs vérifiés peuvent s'y connecter ou s'y inscrire. Grâce à une configuration simplifiée, l'extension Keycloak SSO pour Magento rationalise l'authentification des utilisateurs et améliore la gestion globale des accès. Suivez le guide ci-dessous pour installer et configurer Keycloak SSO pour Magento en toute simplicité.
Cliquez ici pour en savoir plus sur les fonctionnalités supplémentaires des extensions Magento OAuth Single Sign-On (client OAuth et OpenID Connect).
Procédure d'installation
- Utiliser le compositeur
- Installation manuelle
Pré-requis : Téléchargement Et Installation
- Tout d'abord, Télécharger Keycloak et l'installer.
- Démarrez le serveur keycloak en fonction de votre version de keycloak. (Voir le tableau ci-dessous)
| Pour la version Keycloak 16 et inférieure |
Accédez au répertoire racine de keycloak coffre autonome.sh |
| Pour la version Keycloak 17 et supérieure |
Accédez au répertoire racine de keycloak coffre kc.bat et exécutez les commandes ci-dessous.
|
Étapes de configuration
1. Configurer l'extension SSO miniOrange
- Dans l'extension miniOrange SSO pour Magento, accédez à l'onglet Application, sélectionnez OAuth/OpenID, et cliquez sur Cape de clé .
- Copiez le URL de rappel de l'extension. Vous en aurez besoin pour Cape de clé configuration.
2. Configurer Keycloak comme fournisseur OAuth pour la connexion SSO Keycloak de Magento
Sélectionnez la version Keycloak :
- Ajouter un royaume : Connectez-vous maintenant à la console d'administration de Keycloak et accédez au royaume souhaité. Vous pouvez ajouter un nouveau royaume en sélectionnant Ajouter un royaume option.
- Créer un royaume : Entrer Nom de domaine et gardez le nom du royaume à portée de main car il sera nécessaire plus tard pour configurer le Domaine sous le plugin OAuth Client. Cliquez sur CREATE pour ajouter un royaume.
- Créez un client OpenID : Cliquez sur le ANNONCEURS et choisissez créer des pour créer un nouveau client. Entrez l'identifiant client et sélectionnez le protocole client openeid-connecter et sélectionnez Enregistrer.
- Modifier le type d'accès : Une fois le client créé, modifiez son type d'accès en confidentielles.
- Saisissez des URI de redirection valides : Copiez l'URL de rappel depuis l'extension SSO Keycloak pour Magento, puis cliquez sur
SAUVEGARDER. Ex -- https://
/oauth/rappel - Obtenez le secret client : Nous devons maintenant obtenir le secret client. Alors sélectionnez ANNONCEURS et sélectionnez les informations d'identification et copiez votre secret à partir d'ici.
- Configuration du plugin : Entrez copié Secret client sous Secret client dans le plug-in OAuth Client et saisissez le Nom du client sous le champ ID client.
- Ajouter un utilisateur : Nous devons ajouter des utilisateurs au royaume qui pourront accéder aux ressources du royaume. Clique sur le Utilisateurs et choisissez de Ajoutez un nouvel utilisateur.
- Configuration utilisateur: Une fois l’utilisateur créé, l’action suivante doit être effectuée sur lui.
- Utilisateur de la carte : Nous devons mapper l'utilisateur à un rôle. Cliquer sur Mappages de rôles et attribuez à l'utilisateur le rôle souhaité parmi les rôles disponibles et en cliquant sur ajouter sélectionnée.
- Créer un RÔLE : Le rôle sera utilisé par vos applications pour définir quels utilisateurs seront autorisés à accéder à l'application. Cliquez sur le Rôles et choisissez Ajouter Rôle.
- Créer des groupes : Cliquez sur le Groupes et choisissez NOUVEAU créer un nouveau groupe.
- Attribuer un utilisateur au groupe : Sélectionnez l'utilisateur que vous souhaitez ajouter au groupe. Choisissez l'option Groupes dans l'onglet, puis sélectionnez le nom du groupe et cliquez sur rejoindre.
- Mappeur de groupe Keycloak : Maintenant, pour obtenir les détails du groupe, nous devons effectuer son mappage client avec l'appartenance au groupe, sinon les détails du groupe ne seront pas récupérés. Donc dans Espace client, sélectionnez votre client puis cliquez sur mappeur->créer.
- Maintenant, sélectionnez type de mappeur as Appartenance à un groupe et entrez le nom et nom de la revendication du jeton c'est-à-dire le nom de l'attribut correspondant aux groupes qui seront récupérés. Désactivez le chemin d'accès complet au groupe, Ajouter au jeton d'identification et Ajouter au jeton d'accès, puis cliquez sur Enregistrer.
- Mappeur de rôle Keycloak : Maintenant, pour obtenir les détails du rôle, nous devons effectuer son mappage client avec l'appartenance au rôle, sinon les détails du rôle ne seront pas récupérés. Donc dans Section pour les, sélectionnez votre client puis cliquez sur mappeur->créer.
- Maintenant, sélectionnez type de mappeur as Rôle du domaine utilisateur Adhésion et entrez le Le nom. et nom de la revendication de jeton c'est-à-dire le nom de l'attribut correspondant aux groupes qui seront récupérés. Ajoutez au jeton d'identification et ajoutez aux options de jeton d'accès, puis cliquez sur Enregistrer.
- Ajouter un royaume : Connectez-vous maintenant à la console d'administration de Keycloak et accédez au royaume souhaité. Vous pouvez ajouter un nouveau royaume en sélectionnant Créer un royaume option.
- Créer un royaume : Entrer Nom de domaine et gardez le nom du royaume à portée de main car il sera nécessaire plus tard pour configurer le Domaine sous le plugin OAuth Client. Cliquez sur CREATE pour ajouter un royaume.
- Créez un client OpenID : Cliquez sur le ANNONCEURS et choisissez Créer un client pour créer un nouveau client. Entrez l'identifiant client et sélectionnez le protocole client openeid-connecter et cliquez sur Suivant.
- Activez la Authentification du client et Autorisation basculer.
- Faites défiler jusqu'à la Paramètres d'accès et entrez votre URL de rappel/redirection que vous obtiendrez à partir de l'extension Magento Keycloak SSO présente sous URL de rappel champ de texte.
- Rendez-vous dans la section Titres de compétences onglet, copiez le Secret client et gardez-le à portée de main car nous en aurons besoin plus tard lors de la configuration de l'extension Magento Keycloak SSO.
- Configuration du plugin : Entrez copié Secret client sous Secret client dans le plug-in OAuth Client et entrez le identité du client sous le identité du client champ.
- Ajouter un utilisateur : Nous devons ajouter des utilisateurs au royaume qui pourront accéder aux ressources du royaume. Cliquez sur le Utilisateurs et cliquez sur Créer un nouvel utilisateur pour ajouter un nouvel utilisateur.
- Configuration utilisateur: Une fois l’utilisateur créé, l’action suivante doit être effectuée sur lui.
- Utilisateur de la carte : Nous devons mapper l'utilisateur à un rôle. Cliquer sur Mappages de rôles et attribuez à l'utilisateur le rôle souhaité parmi les rôles disponibles.
- Créer un RÔLE : Le rôle sera utilisé par vos applications pour définir quels utilisateurs seront autorisés à accéder à l'application. Cliquez sur le Rôles et choisissez Créer un rôle.
- Ajouter un royaume : Connectez-vous maintenant à la console d'administration de Keycloak et accédez au royaume souhaité. Vous pouvez ajouter un nouveau royaume en sélectionnant Créer un royaume option.
- Créer un royaume : Entrer Nom de domaine et gardez le nom du royaume à portée de main car il sera nécessaire plus tard pour configurer le Domaine sous le plugin OAuth Client. Cliquez sur CREATE pour ajouter un royaume.
- Créez un client OpenID : Cliquez sur le ANNONCEURS et choisissez Créer un client pour créer un nouveau client. Entrez l'identifiant client et sélectionnez le protocole client openeid-connecter et cliquez sur Suivant.
- Activez la Authentification du client et Autorisation basculer.
- Faites défiler jusqu'à la Paramètres d'accès et entrez votre URL de rappel/redirection que vous obtiendrez à partir de l'extension Magento Keycloak SSO URL de rappel champ de texte.
- Rendez-vous dans la section Titres de compétences onglet, copiez le Secret client et gardez-le à portée de main car nous en aurons besoin plus tard lors de la configuration de l'extension Magento Keycloak SSO.
- Configuration du plugin : Entrez copié Secret client sous Secret client dans le plug-in OAuth Client et entrez le identité du client sous le identité du client champ.
- Ajouter un utilisateur : Nous devons ajouter des utilisateurs au royaume qui pourront accéder aux ressources du royaume. Cliquez sur le Utilisateurs et cliquez sur Créer un nouvel utilisateur pour ajouter un nouvel utilisateur.
- Configuration utilisateur: Une fois l’utilisateur créé, l’action suivante doit être effectuée sur lui.
- Utilisateur de la carte : Nous devons mapper l'utilisateur à un rôle. Cliquer sur Mappages de rôles et attribuez à l'utilisateur le rôle souhaité parmi les rôles disponibles.
- Maintenant, entrez le Nom du fournisseur OAuth, identité du client, Secret du client, Domaine et fourni des points de terminaison.
- Veuillez vous référer au tableau ci-dessous pour configurer le portée et points finaux pour Keycloak version 18 et supérieures dans l'extension.
- Veuillez vous référer au tableau ci-dessous pour configurer le Portée et points de terminaison pour Keycloak version 17 et antérieures dans l'extension .
- Cliquez sur le Enregistrer bouton pour enregistrer les paramètres.
- Cliquez sur le Configuration du test .
- Vous verrez dans un tableau toutes les valeurs renvoyées par votre fournisseur OAuth à Magento. Si les champs Prénom, Nom, Adresse e-mail ou Nom d'utilisateur sont manquants, veuillez configurer votre fournisseur OAuth afin qu'il renvoie ces informations.
- Trouvez votre application Keycloak et cliquez Modifier dans le Menu Actions.
- Cliquez sur Configuration du magasin du menu de gauche.
- Dans l' Configuration du magasinSélectionnez le site web sur lequel vous souhaitez activer l'authentification unique (SSO), puis cochez l'option « Activer l'authentification unique pour ce site ».
- Afficher le bouton SSO sur la page de connexion : Affiche le bouton SSO sur la page de connexion client du site web sélectionné.
- Création automatique des utilisateurs : Vous pouvez créer automatiquement les comptes utilisateurs clients lors du processus d'authentification unique (SSO) s'ils n'existent pas déjà. Cochez la case correspondante pour activer cette fonctionnalité.
- Fonctionnalité de redirection automatique : Redirige automatiquement les utilisateurs vers la page de connexion du fournisseur OAuth, que ce soit depuis la page de connexion Magento ou depuis n'importe quelle page du site web.
- Rendez-vous sur la page de connexion client ; vous y trouverez le bouton SSO. Cliquez dessus et testez l’authentification unique.
- Vous serez connecté avec succès à Magento.
- Activer l'authentification unique pour les administrateurs : Affiche le bouton SSO sur la page de connexion administrateur.
- Texte du bouton SSO administrateur : Définit l'étiquette affichée sur le bouton SSO de la page de connexion administrateur (par exemple, Connexion via Keycloak).
- Création automatique des utilisateurs administrateurs : Crée automatiquement un utilisateur administrateur dans Magento lors de leur première connexion via SSO.
- Redirection automatique depuis l'administrateur : Redirige automatiquement les utilisateurs administrateurs vers la page de connexion du fournisseur OAuth depuis la page de connexion administrateur.
- URL de la porte dérobée : Une URL de secours vous permet de vous connecter à votre tableau de bord d'administration en utilisant les identifiants d'administrateur par défaut au cas où vous seriez bloqué.
- Rendez-vous sur votre page de connexion administrateur ; vous y trouverez le bouton SSO. Cliquez dessus pour activer l’authentification unique (SSO) en tant qu’administrateur.
- Une fois connecté avec succès à Magento en tant qu'administrateur, vous serez redirigé vers le tableau de bord d'administration de Magento.
- Activer pour les clients : Cette option vous permet d'activer l'authentification unique (SSO) sans interface graphique pour vos clients.
-
URL d'authentification unique client : Cette URL permet d'initialiser l'authentification unique (SSO) client depuis les applications sans interface graphique. Ajoutez cette URL SSO à votre application sans interface graphique.
- Exemple de format :
https://<your-magento-domain>/mosso/actions/SendSSORequest?relayState={Store_URL}/headless_store_url/{Headless_URL}&app_name=Keycloak AD - {URL_du_magasin} : Saisissez l'URL de votre boutique Magento.
- {Headless_URL}: Saisissez l'URL de votre application sans interface graphique où le jeton client doit être envoyé.
- Après une authentification unique réussie, un jeton client est envoyé à l'URL sans interface graphique.
Par exemple :{Headless_URL}?customer_token=...
- Exemple de format :
- Jeton OAuth :Activez cette option pour envoyer le jeton JWT du fournisseur OAuth (Keycloak) avec le jeton client.
- Expiration du jeton client : Vous pouvez définir la durée d'expiration (en minutes) du jeton client.
- Liste blanche des URL du frontend : Ici, vous pouvez ajouter les URL autorisées à recevoir le jeton client. Ce jeton ne sera envoyé qu'aux URL figurant sur cette liste blanche.
- Activer pour les administrateurs : Comme pour les clients, cette option active l'authentification unique sans interface graphique pour les administrateurs.
- URL d'authentification unique (SSO) pour l'administrateur : Cette URL lance l'authentification unique (SSO) administrateur depuis des applications sans interface graphique.
- Expiration du jeton d'administrateur : Définissez la durée d'expiration (en minutes) du jeton d'administrateur.
- Liste blanche des URL du frontend : Les jetons d'administrateur ne sont envoyés qu'aux URL autorisées. Vous devez vous assurer que toute URL recevant un jeton d'administrateur figure sur cette liste.
- Rendez-vous dans la section Cartographie d'attributs Section permettant de configurer le mappage des attributs client.
- Permettre Cartographie des attributs clients et sélectionnez case à cocher l'option de Mise à jour des attributs client.
- Vous verrez des champs comme Email, Prénom et Nom de famille sous « Mappage des attributs client ».
- Associez ces champs en sélectionnant les options appropriées dans la liste déroulante.
- Si vous devez ajouter d'autres attributs, cliquez sur + Ajouter des attributs client bouton et sélectionnez l'attribut approprié dans le déroulante.
- Dans l' Attribut client Dans la section, activez le mappage des attributs d'adresse et sélectionnez le case à cocher mettre à jour Attributs de l'adresse du client.
- Vous verrez des champs tels que Adresse postale, Code postal, Ville, Étatet d'autres sous Cartographie des adresses clients.
- Associez ces champs en sélectionnant les options appropriées dans la liste déroulante.
- Si vous devez ajouter des attributs d'adresse supplémentaires, cliquez sur + Ajouter des attributs d'adresse Cliquez sur le bouton et choisissez l'attribut approprié dans la liste déroulante.
- Dans l' Mappage des attributs d'administration section, activer Mappage des attributs d'administration et sélectionnez le case à cocher mettre à jour Attribut d'administration.
- Vous verrez des champs comme Email, Nom d'utilisateur ( Ou : Nom d'épouse ) Prénom et Nom de famille sous Mappage des attributs d'administration.
- Associez ces champs en sélectionnant les options appropriées dans la liste déroulante.
- Si vous devez ajouter d'autres attributs, cliquez sur + Ajouter des attributs d'administrateur bouton et sélectionnez l'attribut approprié dans le déroulante.
- Magento utilise le concept de rôles, conçu pour permettre au propriétaire du site de contrôler les actions autorisées et interdites aux utilisateurs. Le mappage des rôles vous permet d'attribuer des rôles spécifiques aux utilisateurs d'un groupe donné dans votre fournisseur OAuth.
- Sélectionnez dans la liste déroulante l'attribut de votre fournisseur d'identité qui contient les informations de groupe/rôle pour les utilisateurs administrateurs et clients.
- Dans les paramètres de mappage des groupes de clients, l'administrateur du magasin peut définir le groupe de clients Magento à attribuer en fonction des informations de groupe reçues du fournisseur d'identité (IdP) lors de l'authentification unique (SSO).
- Cochez la case « Mettre à jour le groupe frontal lors de l’authentification unique » si vous souhaitez que Magento mette à jour le groupe de clients à chaque fois qu’un utilisateur se connecte via l’authentification unique.
- Utilisez la liste déroulante Groupe par défaut pour sélectionner les groupes Magento qui doivent être attribués à un utilisateur lorsqu'aucune information de groupe n'est renvoyée par le fournisseur d'identité ou lorsque le groupe reçu ne correspond à aucun mappage configuré.
- Saisissez les valeurs du groupe de fournisseur d'identité en regard des groupes de clients Magento correspondants, selon les besoins.
- Les utilisateurs appartenant à un groupe spécifique du fournisseur d'identité se verront automatiquement attribuer le groupe Magento correspondant lors de l'authentification unique (SSO).
- Exemple : Si la valeur du groupe provenant du fournisseur d'identité est mappée au groupe Général dans Magento, tout utilisateur ayant ce groupe dans le fournisseur d'identité se verra attribuer le groupe client Général lors de l'authentification unique (SSO).
- Cochez la case « Mettre à jour les rôles d’administration lors de l’authentification unique » si vous souhaitez que Magento mette à jour les rôles d’administrateur à chaque fois qu’un utilisateur se connecte via l’authentification unique.
- Utilisez la liste déroulante Groupe par défaut pour sélectionner le rôle Magento à attribuer à un utilisateur lorsqu'aucune information de groupe n'est renvoyée par le fournisseur d'identité ou lorsque le groupe reçu ne correspond à aucun mappage configuré.
- Saisissez les valeurs du groupe de fournisseur d'identité en fonction des rôles d'administrateur Magento correspondants, le cas échéant.
- Les utilisateurs appartenant à un groupe spécifique du fournisseur d'identité se verront automatiquement attribuer le groupe Magento correspondant lors de l'authentification unique (SSO).
- Exemple : Si la valeur du groupe provenant du fournisseur d'identité est mappée au groupe Général dans Magento, tout utilisateur appartenant à ce groupe dans le fournisseur d'identité se verra attribuer les rôles d'administrateur général lors de l'authentification unique (SSO).
- Solutions de sécurité Magento
- Qu'est-ce que l'authentification unique (SSO) ?
- Documentation pour développeurs d'Okta concernant OAuth 2.0 et OpenID Connect
- Plugin d'authentification unique (SSO) OAuth pour Magento.
- 1) Définir un mot de passe pour celui-ci alors cliquez sur Titres de compétences et définissez un nouveau mot de passe pour l'utilisateur.
REMARQUE : la désactivation de l'option temporaire rendra le mot de passe utilisateur permanent.
Étape 1.1 : Étapes pour récupérer les groupes Keycloak [Prime]
Remarque : -- Si le chemin complet est sur le chemin du groupe, il sera récupéré, sinon le nom du groupe sera récupéré.
Étape 1.2 : Étapes pour récupérer les rôles Keycloak [Prime]
- 1) Définir un mot de passe pour celui-ci alors cliquez sur Titres de compétences et définissez un nouveau mot de passe pour l'utilisateur.
REMARQUE : la désactivation de l'option temporaire rendra le mot de passe utilisateur permanent.
- 1) Définir un mot de passe pour celui-ci alors cliquez sur Titres de compétences et définissez un nouveau mot de passe pour l'utilisateur.
REMARQUE : la désactivation de l'option temporaire rendra le mot de passe utilisateur permanent.
En conclusion, en configurant avec succès Keycloak en tant que fournisseur OAuthVous avez activé la connexion et l'autorisation SSO Keycloak Magento pour vos utilisateurs finaux dans Magento.
3. Configurer Magento en tant que client OAuth
| Portée: | profil de messagerie openid |
| Autoriser le point de terminaison : | /realms/{nom-domaine}/protocol/openid-connect/auth |
| Point de terminaison du jeton d’accès : | /realms/{nom-domaine}/protocol/openid-connect/token |
| Obtenir le point de terminaison des informations utilisateur : | /realms/{nom-domaine}/protocol/openid-connect/userinfo |
| URL de redirection personnalisée après la déconnexion :[optionnel] | https://{domaine Keycloak}/royaumes/{nom-domaine}/protocol/openid-connect/logout?post_logout_redirect_uri={RedirectUri}&id_token_hint=##id_token## |
| Portée: | profil de messagerie openid |
| Autoriser le point de terminaison : | /auth/realms/{nom-domaine}/protocol/openid-connect/auth |
| Point de terminaison du jeton d’accès : | /auth/realms/{nom-domaine}/protocol/openid-connect/token |
| Obtenir le point de terminaison des informations utilisateur : | /auth/realms/{nom-domaine}/protocol/openid-connect/userinfo |
| URL de redirection personnalisée après la déconnexion :[optionnel] | /auth/realms/{realm-name}/protocol/openid-connect/logout?redirect_uri=RedirectUri |
À noter: Dans la version Entreprise de l'extension, vous pouvez configurer plusieurs fournisseurs. Pour configurer un fournisseur différent, cliquez sur le bouton « Ajouter un fournisseur » et configurez le fournisseur souhaité. Vous trouverez les guides d'installation de tous les fournisseurs sur [lien manquant]. ici.
4. Paramètres multisites (*Disponible dans les versions Entreprise)
Paramètres de connexion
5. Authentification unique pour l'administrateur
6. Paramètres SSO sans interface graphique (*Disponible dans les versions premium)
7. Attribut / Mappage personnalisé (facultatif). *Fonctionnalité Premium.
Cartographie des attributs clients

Cartographie des adresses clients
Mappage des attributs d'administration
8. Association des groupes/rôles (facultatif). *Fonctionnalité Premium.
Cartographie des groupes de clients
Cartographie des rôles d'administrateur
Ressources supplémentaires
Contactez-nous
Veuillez nous contacter à magentosupport@xecurify.comNotre équipe vous accompagnera dans la mise en place de l'extension SSO (OAuth/OIDC) pour Magento 2. Elle vous aidera également à choisir la solution ou le forfait le plus adapté à vos besoins.
