Leitfaden zur Konfiguration von ASP.NET Framework SAML SSO mit Azure B2C als Identitätsanbieter
Übersicht
ASP.NET SAML Single Sign-On (SSO)-Modul gibt die Möglichkeit zur Aktivierung SAML-Single-Sign-On für Ihre ASP.NET-Anwendungen. Mit Single Sign-On Sie können nur ein Passwort für den Zugriff auf Ihr ASP.NET-Anwendung und Dienstleistungen. Unser Modul ist kompatibel mit allen SAML-kompatible Identitätsanbieter. Hier werden wir Schritt für Schritt durch die Konfiguration gehen Einmaliges Anmelden (SSO) zwischen ASP.NET und Azure B2C Berücksichtigung Azure B2C als IdP.
Plattformunterstützung: Das ASP.NET SAML SSO-Modul unterstützt ASP.NET 3.5 und höhere Frameworks.
Voraussetzungen: Download und Installation
- Um das zu installieren miniOrange SAML SSO NuGet-Paket Installieren Sie in Ihrer .NET-Anwendung einfach das miniOrange NuGet-Paket über Ihrer Anwendung.
PM> NuGet\Install-Package miniOrange.SAML.SSO
- Öffnen Sie nach der Installation Ihren Browser und durchsuchen Sie das Modul-Dashboard mit der folgenden URL:
http(s)<your-dotnet-application-base-url>?ssoaction=config
- Wenn die Registrierungs- oder Anmeldeseite angezeigt wird, haben Sie das miniOrange SAML SSO-Modul erfolgreich zu Ihrer Anwendung hinzugefügt.
- Registrieren Sie sich oder melden Sie sich mit Ihrem Konto an, indem Sie auf klicken Registrieren Klicken Sie auf die Schaltfläche, um das Modul zu konfigurieren.
- Nach erfolgreicher Registrierung erhalten Sie einen Testlizenzschlüssel an Ihre registrierte E-Mail-Adresse.
- Um das Modul zu aktivieren, können Sie entweder:
- Geben Sie die Lizenzschlüssel per E-Mail erhalten in das dafür vorgesehene Eingabefeld.
- Laden Sie die heruntergeladene Lizenzdatei hoch, indem Sie auf das Mehr Info .
OR
- Aktivieren Sie anschließend das Kontrollkästchen "Ich habe die oben genannten Bedingungen gelesen und möchte das Modul aktivieren" und klicken Sie auf Lizenz aktivieren .
Konfigurationsschritte
1. Bereitstellung von .NET-Anwendungsmetadaten für den Azure B2C-Identitätsanbieter
Im Folgenden werden zwei Möglichkeiten beschrieben, mit denen Sie die SAML SP-Metadaten abrufen können, um sie auf der Seite Ihres Identitätsanbieters zu konfigurieren.
A] Verwenden der SAML-Metadaten-URL oder Metadatendatei
- Im Menü „Plugin-Einstellungen“., suchen Dienstanbietereinstellungen. Darunter finden Sie die Metadaten-URL sowie die Möglichkeit, die SAML-Metadaten herunterzuladen.
- Kopieren Sie die Metadaten-URL oder laden Sie die Metadatendatei herunter, um sie auf der Seite Ihres Identitätsanbieters zu konfigurieren.
- Sie können sich auf den Screenshot unten beziehen:
B] Manuelles Hochladen von Metadaten
- Von dem Dienstanbietereinstellungen Abschnitt können Sie die Metadaten des Dienstanbieters manuell kopieren, wie SP-Entitäts-ID, ACS-URL, Single-Logout-URL und geben Sie es zur Konfiguration an Ihren Identitätsanbieter weiter.
- Sie können sich auf den Screenshot unten beziehen:
Registrieren Sie die Identity Experience Framework-Anwendung
- Einloggen in Azure B2C-Portal.
- Wählen Sie im Azure AD B2C-Mandanten aus App-RegistrierungenUnd wählen Sie dann Neue Registrierung.
- Für NameGeben Sie IdentityExperienceFramework ein.
- Der Unterstützte KontotypenWählen Nur Konten in diesem Organisationsverzeichnis.
- Der Umleitungs-URIWählen Sie „Web“ aus und geben Sie dann „https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com“ ein, wobei your-tenant-name der Domänenname Ihres Azure AD B2C-Mandanten ist.
HinweisIm folgenden Schritt, falls 'Berechtigungen' Wenn der Abschnitt nicht sichtbar ist, liegt dies möglicherweise daran, dass Sie für diesen Mandanten kein aktives AzureAD B2C-Abonnement haben. Die Details zum AzureAD B2C-Abonnement finden Sie hier . und Sie können einen neuen Mandanten erstellen, indem Sie die Schritte befolgen ..
- Der BerechtigungenWählen Sie die Erteilen Sie die Zustimmung des Administrators zu den Berechtigungen „openid“ und „offline_access“. Kontrollkästchen.
- Klicken Sie auf Registrieren.
- Nehmen Sie die auf Anwendungs-ID (Client-ID) zur Verwendung in einem späteren Schritt.
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:
- BereichsnameBenutzeridentitätswechsel
- Anzeigename für die Zustimmung des Administrators: Zugriff auf IdentityExperienceFramework
- Beschreibung der Zustimmung des Administrators: 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 ASP.NET-Anwendung
- Wählen Sie „App-Registrierungen“ und anschließend „Neue Registrierung“.
- Geben Sie einen Namen für die Anwendung ein, z. B.: WP-app.
- 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 Dienstanbietereinstellungen Registerkarte des miniOrange ASP.NET 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 navigieren Sie zu Metadaten des Dienstanbieters Registerkarte des Plugins.
- Fügen Sie den kopierten Wert unter ein SP-Entitäts-ID/Aussteller Feld auf dieser Registerkarte.
- Klicken Sie auf Speichern.
Generieren Sie SSO-Richtlinien
-
Navigieren Sie in unserem Azure B2C-Portal zum Abschnitt „Übersicht“ Ihres B2C-Mandanten und notieren Sie Ihren Mandantennamen.
HINWEISWenn Ihre B2C-Domäne b2ctest.onmicrosoft.com lautet, dann ist Ihr Mandantenname b2ctest.
- Geben Sie Ihre Name des Azure B2C-Mandanten Im Folgenden finden Sie die Anwendungs-IDs für die Apps IdentityExperienceFramework und ProxyIdentityExperienceFramework, die in den oben beschriebenen Schritten registriert wurden.
- 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.
Zertifikate einrichten und hochladen
HinweisIm folgenden Schritt, falls „Identity Experience Framework“ nicht anklickbar ist, kann dies daran liegen, dass Sie für diesen Mandanten kein aktives Azure AD B2C-Abonnement haben. Die Details zum Azure AD B2C-Abonnement finden Sie hier . und Sie können einen neuen Mandanten erstellen, indem Sie die Schritte befolgen ..
- 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 Zertifikatkennwort Ihren Mandantennamen ein und klicken Sie auf „Erstellen“. Wenn Ihr Mandantenname beispielsweise xyzb2c.onmicrosoft.com lautet, geben Sie als Kennwort 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 Kreation.
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 Kreation.
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 Realisierung von ASP.NET Single Sign-On (SSO) konfiguriert.
2. Konfigurieren der Azure B2C-Identitätsanbieter-Metadaten in der .NET-Anwendung
- Klicken Sie auf Wählen Sie Ihren IDP Schaltfläche, um einen neuen Identitätsanbieter zu konfigurieren.
- Unter dem Plugin-Einstellungen Registerkarte, wählen Sie AzureB2C als Ihren Identitätsanbieter aus der angezeigten Liste.
Im Folgenden werden zwei Möglichkeiten beschrieben, mit denen Sie die Metadaten Ihres SAML-Identitätsanbieters im Modul konfigurieren können.
A] Metadaten über die Schaltfläche „IDP-Metadaten hochladen“ hochladen:
- Wenn Ihr Identitätsanbieter Ihnen die Metadaten-URL oder Metadatendatei (nur .xml-Format) bereitgestellt hat, können Sie die Metadaten des Identitätsanbieters einfach im Modul mithilfe von konfigurieren Laden Sie IDP-Metadaten hoch .
- Kopieren Sie die Metadaten-URL oder laden Sie die Metadatendatei herunter, um sie auf der Seite Ihres Identitätsanbieters zu konfigurieren.
- Sie können sich auf den Screenshot unten beziehen:
- Sie können eine der Optionen entsprechend dem verfügbaren Metadatenformat auswählen.
B] Konfigurieren Sie die Metadaten des Identitätsanbieters manuell:
- Nach der Konfiguration Ihres Identitätsanbieter, es wird Ihnen zur Verfügung gestellt IDP-Entitäts-ID, IDP-Single-Sign-On-URL und SAML X509-Zertifikat Felder bzw.
- Klicke Gespeichert um Ihre IDP-Daten zu speichern.
3. Testen von SAML SSO
- Navigieren Sie nach dem Hochladen der Metadatendetails zum Einstellungen des Identitätsanbieters Abschnitt. Bewegen Sie den Mauszeiger über das Wählen Sie Aktionen aus Dropdown-Liste und klicken Sie auf Testkonfiguration.
- Der Screenshot unten zeigt ein erfolgreiches Ergebnis. Klicke auf SSO-Integration um die SSO-Integration weiter fortzusetzen.
- Wenn beim Modul ein Fehler auftritt, wird Ihnen ein Fenster ähnlich dem folgenden angezeigt.
- Um den Fehler zu beheben, können Sie die folgenden Schritte ausführen:
- Der Problembehandlung Aktivieren Sie auf der Registerkarte den Schalter, um die Plugin-Protokolle zu empfangen.
- Nach der Aktivierung können Sie Plugin-Protokolle abrufen, indem Sie zu navigieren Plugin-Einstellungen Tab und klicken Sie auf Testkonfiguration.
- Laden Sie Logdatei von dem Problembehandlung Tab, um zu sehen, was schief gelaufen ist.
- Sie können die teilen Logdatei bei uns bei aspnetsupport@xecurify.com und unser Team wird sich mit Ihnen in Verbindung setzen, um Ihr Problem zu lösen.
4. Attributzuordnung
- Nachdem Sie die Konfiguration getestet haben, ordnen Sie Ihre Anwendungsattribute den Identitätsanbieterattributen (IdP) zu.
- Klicken Sie im linken Menü des miniOrange ASP.NET SAML SSO-Moduls auf Attribut-/Rollenzuordnung Registerkarte, wie im Bild gezeigt.
- Wenn Sie zusätzliche Attribute von Ihrem IdP übergeben möchten, geben Sie den Attributnamen und den entsprechenden Attributwert unter Benutzerdefinierte Attributzuordnung.
- Hinweis: Alle zugeordneten Attribute werden in der Sitzung gespeichert, sodass Sie in Ihrer Anwendung darauf zugreifen können.
- Sobald die Attribute zugeordnet sind, klicken Sie auf Attributzuordnung speichern Änderungen anwenden.
5. Integrationscode
- Mit diesen Schritten können Sie die SSO-Benutzerinformationen in Ihrer Anwendung in Form einer Sitzung abrufen.
- Sie können auch nachschauen Aufbautour um zu verstehen, wie die SSO-Integration in Ihrer ASP.NET-Modulanwendung funktionieren würde.
- Kopieren Sie diesen Codeausschnitt einfach und fügen Sie ihn dort ein, wo Sie auf die Benutzerattribute zugreifen möchten.
- Hinweis: Mit dem Testmodul werden die authentifizierten Benutzerdaten in Sitzungsvariablen gespeichert. Unterstützung für das Setzen von Benutzeransprüchen mittels Header-basierter, Forms-Cookie-basierter und JWT-basierter Authentifizierung ist in unserem Premium-Plugin verfügbar.
6. Anmeldeeinstellungen
- Schweben Wählen Sie Aktionen aus und klicken Sie auf SSO-Link kopieren.
- Verwenden Sie die folgende URL als Link in der Anwendung, von der aus Sie SSO durchführen möchten:
https://<asp.net-module-base-url>/?ssoaction=login
- Sie können es beispielsweise wie folgt verwenden:
<a href="https://<asp.net-module-base-url>/?ssoaction=login">Log
in</a>
7. Abmeldeeinstellungen
- Verwenden Sie die folgende URL als Link zu Ihrer Anwendung, von der aus Sie SLO durchführen möchten:
https://<asp.net-module-base-url>/?ssoaction=logout
- Sie können es beispielsweise wie folgt verwenden:
<a href="https://<asp.net-module-base-url>/?ssoaction=logout">Log
out</a>
Ähnliche Artikel
Kontakt aufnehmen
Bitte erreichen Sie uns unter aspnetsupport@xecurify.com, und unser Team unterstützt Sie bei der Einrichtung des ASP.NET Framework SAML SSO. Unser Team hilft Ihnen, die am besten geeignete Lösung/den am besten geeigneten Plan entsprechend Ihren Anforderungen auszuwählen.
