Authentification unique Laravel SAML (SSO) Le plugin donne la possibilité d'activer l'authentification unique SAML pour vos applications Laravel. En utilisant l'authentification unique, vous ne pouvez utiliser qu'un seul mot de passe pour accéder à votre application et à vos services Laravel. Notre plugin est compatible avec tous les fournisseurs d'identité compatibles SAML. Ici, nous allons passer en revue un guide étape par étape pour configurer l'authentification unique (SSO) entre Laravel et Azure B2C en considérant Azure B2C comme IdP.
Pré-requis : Téléchargement Et Installation
Étapes pour configurer la connexion Azure B2C Single Sign-On (SSO) à Laravel
1. Configurer Azure B2C en tant que fournisseur d'identité
1.1 Enregistrer les applications Azure B2C
Enregistrez l’application Identity Experience Framework
- Connectez-vous au portail Azure B2C
- Dans le locataire Azure AD B2C, sélectionnez Inscriptions d'applications, puis sélectionnez Nouvelle inscription.
- Pour Nom, entrez IdentityExperienceFramework.
- Sous Types de compte pris en charge, sélectionnez Comptes dans ce répertoire organisationnel uniquement.
- Sous URI de redirection, sélectionnez Web, puis entrez https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com, où your-tenant-name est le nom de domaine de votre locataire Azure AD B2C.
NOTE:
À l'étape suivante, si le 'Autorisations' n’est pas visible, cela peut être la raison pour laquelle vous n’avez pas d’abonnement AzureAD B2C actif pour ce locataire. Vous pouvez trouver les détails concernant l'abonnement AzureAD B2C ici et vous pouvez créer un nouveau locataire en suivant les étapes ici.
- Sous Permissions, cochez la case Accorder le consentement de l'administrateur aux autorisations openid et offline_access.
- Choisir Créer compte.
- Enregistrez le ID de l'application (client) pour une utilisation ultérieure.
Enregistrez l’application Identity Experience Framework
- Sous Gérer, sélectionnez Exposer une API.
- Choisir Ajouter une portée, puis sélectionnez Enregistrer et continuez à accepter l'URI de l'ID d'application par défaut.
- Entrez les valeurs suivantes pour créer une étendue qui permet l’exécution de stratégies personnalisées dans votre locataire Azure AD B2C :
- Nom de la portée : user_usurpation d'identité
- Nom d'affichage du consentement de l'administrateur : Accéder à IdentityExperienceFramework
- Description du consentement de l'administrateur : Autorisez l’application à accéder à IdentityExperienceFramework au nom de l’utilisateur connecté.
- Choisir Ajouter une portée
Enregistrez l'application ProxyIdentityExperienceFramework
- Choisir Inscriptions d'applications, Puis sélectionnez Nouvelle inscription.
- Pour Nom, saisissez ProxyIdentityExperienceFramework.
- Sous Types de compte pris en charge, sélectionnez Comptes dans ce répertoire organisationnel uniquement.
- Sous URI de redirection, utilisez le menu déroulant pour sélectionner Client public/natif (mobile et ordinateur).
- Pour URI de redirection, saisissez myapp://auth.
- Sous Permissions, cochez la case Accorder le consentement de l'administrateur aux autorisations openid et offline_access.
- Choisir Créer compte.
- Enregistrez le ID de l'application (client) pour une utilisation ultérieure.
Précisez ensuite que l'application doit être traitée comme un client public
- Sous Gérer, sélectionnez Authentification.
- Sous paramètres avancés, activer Autoriser les flux de clients publics (sélectionnez Oui).
- Choisir Enregistrer.
Maintenant, accordez des autorisations à la portée de l'API que vous avez exposée précédemment lors de l'enregistrement IdentityExperienceFramework.
- Sous Gérer, sélectionnez Autorisations API.
- Sous Autorisations configurées, sélectionnez Ajouter une autorisation.
- Sélectionnez le Mes API onglet, puis sélectionnez Cadre d'expérience d'identité .
- Sous Autorisation, Sélectionnez l' user_usurpation d'identité portée que vous avez définie précédemment.
- Choisir Ajouter des autorisations. Comme indiqué, attendez quelques minutes avant de passer à l'étape suivante.
- Choisir Accordez le consentement de l'administrateur pour (nom de votre locataire).
- Sélectionnez votre compte d'administrateur actuellement connecté ou connectez-vous avec un compte dans votre locataire Azure AD B2C auquel a été attribué au moins le rôle d'administrateur d'application Cloud.
- Choisir Oui.
- Choisir Refresh, puis vérifiez que « Accordé pour... » apparaît sous Statut pour les étendues - offline_access, openid et user_impersonation. La propagation des autorisations peut prendre quelques minutes.
Enregistrez l'application WordPress
- Choisir Inscriptions d'applications, Puis sélectionnez Nouvelle inscription.
- Entrez un nom pour l'application tel que : WordPress.
- Sous Types de compte pris en charge, sélectionnez Comptes dans n’importe quel annuaire d’organisation ou n’importe quel fournisseur d’identité. Pour authentifier les utilisateurs avec Azure AD B2C.
- Sous URI de redirection, sélectionnez Web, puis entrez l'URL ACS à partir du Métadonnées du fournisseur de services onglet du plugin miniOrange SAML.
- Choisir Créer compte.
- Sous Gérer, cliquer sur Exposer une API.
- Cliquez sur complet » pour l'URI de l'ID d'application, puis cliquez sur Enregistrer, en acceptant la valeur par défaut.
- Une fois enregistré, copiez l'URI de l'ID d'application et collez-le dans le ID d'entité SP/émetteur champ sous le plugin laravel saml.
- Cliquez sur Enregistrer.
1.2 Générer des politiques SSO
- Depuis notre portail Azure B2C, accédez à la section Présentation de votre locataire B2C et enregistrez le nom de votre locataire.
NOTE: Si votre domaine B2C est b2ctest.onmicrosoft.com, le nom de votre locataire est b2ctest.
- Saisissez votre Nom du locataire Azure B2C ci-dessous, ainsi que l'ID d'application pour IdentityExperienceFramework et
Applications ProxyIdentityExperienceFramework telles qu’enregistrées dans les étapes ci-dessus.
Cliquez sur le Générer des stratégies Azure B2C bouton pour télécharger les politiques SSO.
Extrayez le fichier zip téléchargé. Il contient les fichiers de stratégie et le certificat (.pfx), dont vous aurez besoin dans les étapes suivantes.
1.3 Certificats de configuration
NOTE:
À l'étape suivante, si le « Cadre d'expérience d'identité » n'est pas cliquable, cela peut être la raison pour laquelle vous n'avez pas d'abonnement Azure AD B2C actif pour ce locataire. Vous pouvez trouver les détails concernant l’abonnement Azure AD B2C
ici et vous pouvez créer un nouveau locataire en suivant les étapes ici.
Téléchargez le certificat
- Connectez-vous à la Portail Azure et accédez à votre locataire Azure AD B2C.
- Sous Politiques internes, sélectionnez Cadre d'expérience d'identité et alors Clés de politique.
- Choisir Ajouter, Puis sélectionnez Options > Télécharger
- Entrez le nom comme SamlIdpCert. Le préfixe B2C_1A_ est automatiquement ajouté au nom de votre clé.
- À l'aide du contrôle de téléchargement de fichiers, téléchargez votre certificat généré au cours des étapes ci-dessus avec les politiques SSO (tenantname-cert.pfx).
- Saisissez le mot de passe du certificat comme nom de locataire et cliquez sur Créer. Par exemple, si le nom de votre locataire est xyzb2c.onmicrosoft.com, entrez le mot de passe sous la forme xyzb2c.
- Vous devriez pouvoir voir une nouvelle clé de stratégie portant le nom B2C_1A_SamlIdpCert.
Créer la clé de signature
- Sur la page de présentation de votre locataire Azure AD B2C, sous Politiques internes, sélectionnez Cadre d'expérience d'identité.
- Choisir Clés de politique puis sélectionnez Ajouter.
- Pour Options, choisissez Générer.
- In Nom, saisissez TokenSigningKeyContainer.
- Pour Type de clé, sélectionnez RSA.
- Pour Utilisation des clés, sélectionnez Signature.
- Choisir Créer.
Créer la clé de chiffrement
- Sur la page de présentation de votre locataire Azure AD B2C, sous Politiques internes, sélectionnez Cadre d'expérience d'identité.
- Choisir Clés de politique puis sélectionnez Ajouter.
- Pour Options, choisissez Générer.
- In Nom, saisissez TokenEncryptionKeyContainer.
- Pour Type de clé, sélectionnez RSA.
- Pour Utilisation des clés, sélectionnez Chiffrement.
- Choisir Créer.
1.4 Télécharger les politiques
- Sélectionnez le Cadre d'expérience d'identité élément de menu dans votre locataire B2C dans le portail Azure.
- Choisir Télécharger une stratégie personnalisée.
- Conformément à l'ordre suivant, téléchargez les fichiers de stratégie téléchargés lors des étapes ci-dessus :
- TrustFrameworkBase.xml
- TrustFrameworkExtensions.xml
- InscriptionOuSignin.xml
- ProfilEdit.xml
- Mot de passeRéinitialiser.xml
- InscriptionOuConnexionSAML.xml
- Au fur et à mesure que vous téléchargez les fichiers, Azure ajoute le préfixe B2C_1A_ à chacun.
Vous avez configuré avec succès Azure B2C en tant qu'IdP SAML (fournisseur d'identité) pour réaliser la connexion WordPress Azure B2C Single Sign-On (SSO), garantissant une connexion sécurisée au site WordPress (WP).
2. Configurez le plugin Laravel SAML en tant que fournisseur de services
- Rendez-vous dans la section miniOrange Laravel SAML 2.0 SSO plugin et cliquez sur Choisissez le fichier bouton à côté du Télécharger des données de viande option.
- Sélectionnez le fichier de métadonnées que nous avons téléchargé depuis votre IDP et cliquez sur Télécharger une présentation .
- Cliquez sur Configuration du test pour tester si la configuration SAML que vous avez effectuée est correcte. En cas de configuration de test réussie, vous obtiendrez les différents attributs utilisateur renvoyés par votre fournisseur d'identité dans un tableau de configuration de test.
3. Options SSO
- Vos utilisateurs peuvent lancer le flux d'authentification unique en cliquant sur le bouton Single Sign On bouton généré sur votre page de connexion. Si vous n'avez pas encore cette page, exécutez php artisan faire: auth & php artisan migrer pour générer le module d'authentification.
Dans ce guide, vous avez configuré avec succès Authentification unique Azure B2C SAML (connexion Azure AD SSO) choose Azure B2C comme IdP et Laravel en tant que SP en utilisant le plugin miniOrange-SAML Single Sign On – Connexion SSO. Cette solution garantit que vous êtes prêt à déployer un accès sécurisé à votre site Laravel en utilisant Connexion Azure B2C informations d'identification en quelques minutes.
Ressources supplémentaires