Das Laravel SAML Single Sign-On (SSO) -Plugin ermöglicht die Aktivierung von SAML Single Sign-On für Ihre Laravel-Anwendungen. Mit Single Sign-On benötigen Sie nur ein einziges Passwort für den Zugriff auf Ihre Laravel-Anwendung und -Dienste. Unser Plugin ist mit allen SAML-konformen Identitätsanbietern kompatibel. In dieser Schritt-für-Schritt-Anleitung erfahren Sie, wie Sie Single Sign-On (SSO) zwischen Laravel und Azure B2C konfigurieren, wobei Azure B2C als Identitätsanbieter dient.
Voraussetzungen: Download und Installation
Schritte zum Konfigurieren der Azure B2C Single Sign-On (SSO)-Anmeldung bei Laravel
1. Konfigurieren Sie Azure B2C als Identitätsanbieter
1.1 Registrieren Sie Azure B2C-Anwendungen
Registrieren Sie die Identity Experience Framework-Anwendung
Registrieren Sie die Identity Experience Framework-Anwendung
- Der VerwaltenWählen Eine API verfügbar machen.
- Auswählen Einen Bereich hinzufügen, wählen Sie dann Speichern aus und akzeptieren Sie weiterhin den Standard-Anwendungs-ID-URI.
- Geben Sie die folgenden Werte ein, um einen Bereich zu erstellen, der die Ausführung benutzerdefinierter Richtlinien in Ihrem Azure AD B2C-Mandanten ermöglicht:
- Bereichsname: user_impersonation
- Anzeigename der Administratoreinwilligung: Greifen Sie auf IdentityExperienceFramework zu
- Beschreibung der Administratoreinwilligung: Erlauben Sie der Anwendung, im Namen des angemeldeten Benutzers auf IdentityExperienceFramework zuzugreifen.
- Auswählen Bereich hinzufügen
Registrieren Sie die ProxyIdentityExperienceFramework-Anwendung
- Auswählen App-RegistrierungenUnd wählen Sie dann Neue Registrierung.
- Für NameGeben Sie ProxyIdentityExperienceFramework ein.
- Der Unterstützte KontotypenWählen Nur Konten in diesem Organisationsverzeichnis.
- Der Umleitungs-URI, verwenden Sie das Dropdown-Menü zur Auswahl Öffentlicher Client/nativ (mobil und Desktop).
- Für Umleitungs-URI, geben Sie myapp://auth ein.
- Der Berechtigungen, aktivieren Sie das Kontrollkästchen „Administratoreinwilligung für openid- und offline_access-Berechtigungen erteilen“.
- Auswählen Registrieren.
- Nehmen Sie die auf Anwendungs-ID (Client-ID) zur Verwendung in einem späteren Schritt.
Geben Sie als Nächstes an, dass die Anwendung als öffentlicher Client behandelt werden soll
- Der VerwaltenWählen Authentifizierung.
- Der Erweiterte Einstellungen, aktivieren Öffentliche Clientflüsse zulassen (wählen Sie Ja).
- Auswählen Gespeichert.
Erteilen Sie nun Berechtigungen für den API-Bereich, den Sie zuvor in der IdentityExperienceFramework-Registrierung bereitgestellt haben
- Der VerwaltenWählen API-Berechtigungen.
- Der Konfigurierte BerechtigungenWählen Berechtigung hinzufügen.
- Wähle aus Meine APIs Registerkarte, und wählen Sie dann die IdentityExperienceFramework Anwendung.
- Der GenehmigungWählen Sie die user_impersonation Bereich, den Sie zuvor definiert haben.
- Auswählen Berechtigungen hinzufügen. Warten Sie wie angegeben einige Minuten, bevor Sie mit dem nächsten Schritt fortfahren.
- Auswählen Erteilen Sie die Administratoreinwilligung für (Ihren Mandantennamen).
- Wählen Sie Ihr aktuell angemeldetes Administratorkonto aus oder melden Sie sich mit einem Konto in Ihrem Azure AD B2C-Mandanten an, dem mindestens die Rolle „Cloud-Anwendungsadministrator“ zugewiesen wurde.
- Auswählen Ja.
- Auswählen Inspirationund überprüfen Sie dann, ob „Gewährt für ...“ unter angezeigt wird Status für die Bereiche offline_access, openid und user_impersonation. Es kann einige Minuten dauern, bis die Berechtigungen weitergegeben werden.
Registrieren Sie die WordPress-Anwendung
- Auswählen App-RegistrierungenUnd wählen Sie dann Neue Registrierung.
- Geben Sie einen Namen für die Anwendung ein, z. B.: WordPress.
- Der Unterstützte KontotypenWählen Konten in einem beliebigen Organisationsverzeichnis oder einem beliebigen Identitätsanbieter. Zur Authentifizierung von Benutzern mit Azure AD B2C.
- Der Umleitungs-URI, wählen Sie „Web“ aus und geben Sie dann die ACS-URL ein Metadaten des Dienstanbieters Registerkarte des miniOrange SAML-Plugins.
- Auswählen Registrieren.
- Der Verwalten, klicke auf Eine API verfügbar machen.
- Klicken Sie auf Stelle den Geben Sie den Anwendungs-ID-URI ein und klicken Sie dann auf Gespeichert, wobei der Standardwert übernommen wird.
- Kopieren Sie nach dem Speichern den Anwendungs-ID-URI und fügen Sie ihn in das ein SP-Entitäts-ID/Aussteller Feld unter dem Laravel-Saml-Plugin.
- Klicken Sie auf Speichern.
1.2 SSO-Richtlinien generieren
- Navigieren Sie in unserem Azure B2C-Portal zum Abschnitt „Übersicht“ Ihres B2C-Mandanten und notieren Sie Ihren Mandantennamen.
Anmerkungen: Wenn Ihre B2C-Domäne b2ctest.onmicrosoft.com lautet, lautet Ihr Mandantenname b2ctest.
- Geben Sie Ihre Name des Azure B2C-Mandanten unten, zusammen mit der Anwendungs-ID für IdentityExperienceFramework und
ProxyIdentityExperienceFramework-Apps wie in den obigen Schritten registriert.
Klicken Sie auf Generieren Sie Azure B2C-Richtlinien Klicken Sie auf die Schaltfläche, um die SSO-Richtlinien herunterzuladen.
Extrahieren Sie die heruntergeladene ZIP-Datei. Es enthält die Richtliniendateien und das Zertifikat (.pfx), die Sie in den folgenden Schritten benötigen.
1.3 Setup-Zertifikate
Anmerkungen:
Wenn im nächsten Schritt das „Identity Experience Framework“ nicht anklickbar ist, liegt das möglicherweise daran, dass Sie für diesen Mandanten kein aktives Azure AD B2C-Abonnement besitzen. Details zum Azure AD B2C-Abonnement finden Sie hier. Sie können einen neuen Mandanten erstellen, indem Sie die Schritte hier befolgen.
Laden Sie das Zertifikat hoch
- Melden Sie sich bei der an Azure-Portal und navigieren Sie zu Ihrem Azure AD B2C-Mandanten.
- Der RichtlinienWählen Identity Experience Framework und dann Richtlinienschlüssel.
- Auswählen SpeichernUnd wählen Sie dann Optionen > Hochladen
- Geben Sie als Namen SamlIdpCert ein. Dem Namen Ihres Schlüssels wird automatisch das Präfix B2C_1A_ hinzugefügt.
- Laden Sie mithilfe der Datei-Upload-Steuerung Ihr Zertifikat hoch, das in den obigen Schritten generiert wurde, zusammen mit den SSO-Richtlinien (tenantname-cert.pfx).
- Geben Sie als Mandantennamen das Passwort des Zertifikats ein und klicken Sie auf Erschaffung. Wenn Ihr Mandantenname beispielsweise xyzb2c.onmicrosoft.com lautet, geben Sie das Kennwort als xyzb2c ein
- Sie sollten einen neuen Richtlinienschlüssel mit dem Namen B2C_1A_SamlIdpCert sehen können.
Erstellen Sie den Signaturschlüssel
- Auf der Übersichtsseite Ihres Azure AD B2C-Mandanten unter RichtlinienWählen Identity Experience Framework.
- Auswählen Richtlinienschlüssel und dann auswählen Speichern.
- Für Optionen, wählen Sie Generieren.
- In NameGeben Sie TokenSigningKeyContainer ein.
- Für Schlüsselart, wählen Sie RSA.
- Für Schlüsselverwendung, wählen Sie „Signatur“.
- Auswählen Erschaffung.
Erstellen Sie den Verschlüsselungsschlüssel
- Auf der Übersichtsseite Ihres Azure AD B2C-Mandanten unter RichtlinienWählen Identity Experience Framework.
- Auswählen Richtlinienschlüssel und dann auswählen Speichern.
- Für Optionen, wählen Sie Generieren.
- In NameGeben Sie TokenEncryptionKeyContainer ein.
- Für Schlüsselart, wählen Sie RSA.
- Für Schlüsselverwendung, wählen Sie Verschlüsselung.
- Auswählen Erschaffung.
1.4 Laden Sie die Richtlinien hoch
- Wähle aus Identity Experience Framework Menüpunkt in Ihrem B2C-Mandanten im Azure-Portal.
- Auswählen Laden Sie eine benutzerdefinierte Richtlinie hoch.
- Laden Sie die in den oben genannten Schritten heruntergeladenen Richtliniendateien in der folgenden Reihenfolge hoch:
- TrustFrameworkBase.xml
- TrustFrameworkExtensions.xml
- SignUpOrSignin.xml
- ProfileEdit.xml
- PasswordReset.xml
- SignUpOrSigninSAML.xml
- Wenn Sie die Dateien hochladen, fügt Azure jeder Datei das Präfix B2C_1A_ hinzu.
Sie haben Azure B2C erfolgreich als SAML-IdP (Identitätsanbieter) für die WordPress Azure B2C Single Sign-On (SSO)-Anmeldung konfiguriert und so eine sichere Anmeldung bei der WordPress (WP)-Site gewährleistet.
2. Konfigurieren Sie das Laravel SAML-Plugin als Dienstanbieter
- Gehen Sie zur miniOrange Laravel SAML 2.0 SSO Plugin und klicken Sie auf Wählen Sie Datei Knopf neben dem Laden Sie Meatadata hoch .
- Wählen Sie die Metadatendatei aus, die wir von Ihrem IDP heruntergeladen haben, und klicken Sie auf Hochladen .
- Klicken Sie auf Testkonfiguration Klicken Sie auf die Schaltfläche, um zu testen, ob die von Ihnen vorgenommene SAML-Konfiguration korrekt ist. Bei erfolgreicher Testkonfiguration erhalten Sie die verschiedenen Benutzerattribute, die von Ihrem Identitätsanbieter zurückgegeben werden, in einer Testkonfigurationstabelle.
3. SSO-Optionen
- Ihre Benutzer können den Single-Sign-On-Ablauf starten, indem sie auf klicken Single Sign On Schaltfläche, die auf Ihrer Anmeldeseite generiert wird. Wenn Sie diese Seite noch nicht haben, führen Sie sie aus php artisan make:auth & php artisan migrieren um das Authentifizierungsmodul zu generieren.
In dieser Anleitung haben Sie Azure B2C SAML Single Sign-On (Azure AD SSO-Anmeldung) erfolgreich konfiguriert, indem Sie Azure B2C als Identitätsanbieter (IdP) und Laravel als Service Provider (SP) mithilfe des miniOrange-Plugins „SAML Single Sign-On – SSO-Anmeldung“ ausgewählt haben . Diese Lösung stellt sicher, dass Sie innerhalb weniger Minuten einen sicheren Zugriff auf Ihre Laravel-Website mit Azure B2C- Anmeldeinformationen einrichten können.
Weitere Informationen