Anleitung zur Konfiguration von ASP.NET Framework SAML SSO mit Shibboleth-2 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 Shibboleth-2 Berücksichtigung Shibboleth-2 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 Shibboleth-2-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:
-
Entfernen Sie in conf/idp.properties das Kommentarzeichen und setzen Sie „idp.encryption.optional“ auf „true“.
z.B. idp.encryption.optional = true
- In conf/relying-party.xml, konfigurieren Sie den Dienstanbieter wie folgt
<MetadataProviderxsi:type="InlineMetadataProvider"
xmlns="urn:mace:shibboleth:2.0:metadata" id="MyInlineMetadata">
<EntitiesDescriptorxmlns="urn:oasis:names:tc:SAML:2.0:metadata">
<md:EntityDescriptorxmlns:md="urn:oasis:names:tc:SAML:2
entityID="<ENTITY_ID_FROM_PLUGIN>">
<md:SPSSODescriptorAuthnRequestsSigned="false"
WantAssertionsSigned="true" protocolSupportEnumeration = "urn:oasis:names:tc:SAML:2.0:protocol">
<md:nameidformat>urn:oasis:names:tc:SAML:1.1:nameidformat:emailAddress</md:NameIDFormat>
<md:AssertionConsumerServiceBinding="urn:oasis:names:tc:SAML:2.0:bindings:https-POST"
Location="<ACS_URL_FROM_PLUGIN>" index="1"/>
</md:SPSSODescriptor>
</md:EntityDescriptor>
</EntitiesDescriptor>
</MetadataProvider>
</md:nameidformat>
- Stellen Sie sicher, dass Ihr Shibboleth-Server sendet E-Mail Adresse des Benutzers in Name ID. Rufen Sie in attribute-resolver.xml das E-Mail-Attribut als Namens-ID ab:
<resolver:AttributeDefinitionxsi:type="ad:Simple" id="email" sourceAttributeID="mail">
<resolver:Dependency ref="ldapConnector" />
<resolver:AttributeEncoderxsi:type="enc:SAML2StringNameID"
nameFormat="urn:oasis:names:tc:SAML:1.1:
nameid-format:emailAddress"/>
</resolver:AttributeDefinition>
- Geben Sie in attribute-filter.xml das E-Mail-Attribut frei:
<afp:AttributeFilterPolicy id="releaseTransientIdToAnyone">
<afp:PolicyRequirementRulexsi:type="basic:ANY"/>
<afp:AttributeRuleattributeID="email">
<afp:PermitValueRulexsi:type="basic:ANY"/>
</afp:AttributeRule>
</afp:AttributeFilterPolicy>
- Starten Sie den Shibboleth-Server neu.
- Sie müssen diese Endpunkte im ASP.NET SAML-Modul konfigurieren.
| IDP-Entitäts-ID | https://<your_domain>/idp/shibboleth |
| Einzelne Login-URL | https://<your_domain>/idp/profile/SAML2/Redirect/SSO |
| X.509-Zertifikat | Das Public-Key-Zertifikat Ihres Shibboleth-Servers |
- Sie haben Shibboleth-2 erfolgreich als SAML IdP (Identity Provider) für die Shibboleth-SSO-Anmeldung in Ihrer ASP.NET-Anwendung konfiguriert.
2. Konfigurieren der Shibboleth-2-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 Shibboleth-2 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.
- Klicken Sie auf 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 der 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
Danke für Ihre Antwort. Wir werden uns bald bei Ihnen melden.
Etwas ist schief gelaufen. Bitte senden Sie Ihre Anfrage erneut
