Suchergebnisse :

×

Anleitung zur Konfiguration von ASP.NET Framework SAML SSO mit Shibboleth als Identitätsanbieter

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 Berücksichtigung Shibboleth als IdP.

Plattformunterstützung: Das ASP.NET SAML SSO-Modul unterstützt ASP.NET 3.5 und höhere Frameworks.


  • Um das zu installieren miniOrange SAML SSO NuGet-Paket Installieren Sie in Ihrer .NET-Anwendung einfach das miniOrange NuGet-Paket über Ihrer Anwendung.
NuGet-Paket
.NET-CLI

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.
ASP.NET Core – Registrierungsseite

  • 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.

    OR

    • Laden Sie die heruntergeladene Lizenzdatei hoch, indem Sie auf das Mehr Info .
ASP.NET Framework Verify-Testlizenz

  • 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 .
ASP.NET Framework Lizenz aktivieren

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:
ASP.NET Core – Metadaten des Dienstanbieters

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:
ASP.NET Core – SP-Daten manuell eingeben
  • Entfernen Sie in conf/idp.properties das Kommentarzeichen und setzen Sie „idp.encryption.optional“ auf „true“.
    z.B. idp.encryption.optional = true
  • In conf/metadata-providers.xml, konfigurieren Sie den Dienstanbieter wie folgt

  <MetadataProvider xmlns:samlmd="urn:oasis:names:tc:SAML:2.0:metadata"

  id="miniOrangeInLineEntity" xsi:type="InlineMetadataProvider" sortKey="1">

  <samlmd:EntityDescriptor ID="entity" entityID="<SP-EntityID / Issuer from Service Provider Info   tab in plugin.>"

  validUntil="2020-09-06T04:13:32Z">

  <samlmd:SPSSODescriptor AuthnRequestsSigned="false" WantAssertionsSigned="true"

  protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">

  <samlmd:NameIDFormat>

  urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress

  </samlmd:NameIDFormat>

  <samlmd:AssertionConsumerServiceBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"

  Location="<ACS (AssertionConsumerService) URL from Step1 of the plugin under Identity Provider   Tab.>"

  index="1" />

  </samlmd:SPSSODescriptor>

  </samlmd:EntityDescriptor>

  </MetadataProvider>

  • In conf/saml-nameid.properties, Kommentar entfernen und Standard festlegen NameID as E-Mail Adresse so was.
  idp.nameid.saml2.default=urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress
  • In conf/saml-nameid-xml, suchen Sie nach shibboleth.SAML2NameIDGenerators. Kommentieren Sie die Bean shibboleth.SAML2AttributeSourcedGenerator aus und kommentieren Sie alle anderen Ref-Beans

  <!-- SAML 2 NameID Generation -->

  <util:list id="shibboleth.SAML2NameIDGenerators">

  <!--<ref bean="shibboleth.SAML2TransientGenerator" /> -->

  <!--<ref bean="shibboleth.SAML2PersistentGenerator" /> -->

  <bean parent="shibboleth.SAML2AttributeSourcedGenerator"

  p:format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress"

  p:attributeSourceIds="#{ {'email'} }" />

  </util:list>

  • Stellen Sie sicher, dass Sie AttributeDefinition in definiert haben conf/attribute-resolver.xml.

  <!-- Note: AttributeDefinitionid must be same as what you provided in attributeSourceIds in   conf/saml-nameid.xml -->

  <resolver:AttributeDefinitionxsi:type="ad:Simple" id="email" sourceAttributeID="mail">

  <resolver:Dependency ref="ldapConnector" />

  <resolver:AttributeEncoderxsi:type="enc:SAML2String" name="email" friendlyName="email" />

  </resolver:AttributeDefinition>

  <resolver:DataConnector id="ldapConnector"
  xsi:type="dc:LDAPDirectory"
  ldapURL="%{idp.authn.LDAP.ldapURL}"
  baseDN="%{idp.authn.LDAP.baseDN}"
  principal="%{idp.authn.LDAP.bindDN}"
  principalCredential="%{idp.authn.LDAP.bindDNCredential}">

  <dc:FilterTemplate>

  <!-- Define you User Search Filter here -->

  <![CDATA[(&(objectclass=*) (cn=$requestContext.principalName)) ]]>

  </dc:FilterTemplate>

  <dc:ReturnAttributes>*</dc:ReturnAttributes>

  </resolver:DataConnector>

  • Stellen Sie sicher, dass AttributeFilterPolicy in definiert ist conf/attribute-filter.xml.

  <afp:AttributeFilterPolicy id="ldapAttributes">

  <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
Einzelne Abmelde-URL https://<your_domain>/idp/shibboleth
X.509-Zertifikat Das Public-Key-Zertifikat Ihres Shibboleth-Servers
  • Sie haben Shibboleth erfolgreich als SAML IdP (Identity Provider) für die Shibboleth SSO-Anmeldung in Ihrer ASP.NET-Anwendung konfiguriert.

  • Klicken Sie auf Wählen Sie Ihren IDP Schaltfläche, um einen neuen Identitätsanbieter zu konfigurieren.
ASP.NET Framework SAML SSO mit Shibboleth als IDP – Neuen IDP hinzufügen

  • Unter dem Plugin-Einstellungen Registerkarte, wählen Sie Shibboleth als Ihren Identitätsanbieter aus der angezeigten Liste.
ASP.NET Framework SAML SSO mit Shibboleth als IDP – Neuen IDP hinzufügen

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:
ASP.NET Framework – IDP-Metadaten hochladen

  • 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.
ASP.NET Framework – IDP manuell konfigurieren
  • 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.
ASP.NET Core – Testkonfiguration

  • Der Screenshot unten zeigt ein erfolgreiches Ergebnis. Klicke auf SSO-Integration um die SSO-Integration weiter fortzusetzen.
ASP.NET Framework – Testkonfiguration

  • Wenn beim Modul ein Fehler auftritt, wird Ihnen ein Fenster ähnlich dem folgenden angezeigt.
ASP.NET Framework – Testkonfigurationsfehler

  • 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.
ASP.NET Framework – Fehlerbehebung

  • 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.
  • 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.
ASP.NET Framework – Attributzuordnung

  • 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.
ASP.NET Core – Attributzuordnung
  • 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.
ASP.NET Framework – Integrationscode

  • 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.
  • Schweben Wählen Sie Aktionen aus und klicken Sie auf SSO-Link kopieren.
ASP.NET Framework 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>
  • 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>

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.

ADFS_sso ×
Hallo!

Brauchen Sie Hilfe? Wir sind hier!

Unterstützung