SAML 2.0 Anwendungsregistrierung

FoxIDs SAML 2.0 Anwendungsregistrierung ermöglicht es, eine SAML 2.0 basierte Anwendung zu verbinden.

SAML (Security Assertion Markup Language) 2.0 ist ein XML-basierter Standard für Authentifizierung und Autorisierung, der sicheres Single Sign-On (SSO) zwischen einem Identity Provider (IdP) und einem Service Provider (SP) ermöglicht. FoxIDs unterstützt sowohl SP-initiiertes als auch IdP-initiiertes Login.

FoxIDs SAML 2.0 application registration

Ihre Anwendung wird zu einer SAML 2.0 Relying Party (RP), und FoxIDs agiert als SAML 2.0 Identity Provider (IdP).

FoxIDs unterstützt SAML 2.0 Redirect und Post Bindings.

FoxIDs leitet außerdem einen Login Hint aus der URL der SAML Authn-Anfrage weiter, und zwar über den Query-Parameter login_hint oder LoginHint, wenn die Anfrage kein NameID enthält. Dadurch können Relying Parties wie Microsoft Entra und Okta die Benutzerkennung in der FoxIDs Anmeldeoberfläche vorbefüllen.

Eine Anwendungsregistrierung stellt SAML 2.0 Metadata bereit, sodass Ihre Anwendung den SAML 2.0 Identity Provider (IdP) entdecken kann.

FoxIDs unterstützt Login-, Logout- und Single Logout-SAML 2.0 Profile. Das Artifact-Profil wird nicht unterstützt.

Die von FoxIDs generierten SAML 2.0 Metadata enthalten nur Logout- und Single Logout-Informationen, wenn Logout in der SAML 2.0 Anwendungsregistrierung konfiguriert ist.

Anleitungen:

Konfiguration

So konfigurieren Sie Ihre Anwendung als SAML 2.0 Relying Party (RP).

Metadata-Endpunkte

  • IdP-Metadata: https://foxids.com/tenant-x/environment-y/application-saml-pr1(*)/saml/idpmetadata (ersetzen Sie tenant-x, environment-y und application-saml-pr1 durch Ihre Werte).
  • Alternativer einzelner Endpunkt: Der Authn-Endpunkt gibt die IdP-Metadata auch zurück, wenn er mit GET und ohne SAMLRequest aufgerufen wird. Dadurch können Partner, die eine URL sowohl für den Download von Metadata als auch für Authn-Anfragen benötigen, dieselbe Adresse verwenden, zum Beispiel https://foxids.com/tenant-x/environment-y/application-saml-pr1(*)/saml/authn. Wenn derselbe Endpunkt eine SAML AuthnRequest per Redirect oder Post Binding erhält, führt er den normalen Login-Flow aus.

Eine Anwendungsregistrierung kann Login über mehrere Authentifizierungsmethoden unterstützen, indem der Name der Authentifizierungsmethode zur URL hinzugefügt wird.

Zum Beispiel adressiert https://foxids.com/tenant-x/environment-y/application-saml-pr1(login)/saml/idpmetadata oder /saml/authn die Login-Methode login. Sie können auch die Standardnotation * verwenden, um Login mit allen Authentifizierungsmethoden zu aktivieren.

Der folgende Screenshot zeigt die Konfiguration einer FoxIDs SAML 2.0 Anwendungsregistrierung im FoxIDs Control Client. Hier wird die Konfiguration aus den Metadata der Anwendung erstellt. Ausgegebene Claims werden auf die konfigurierte Menge von Claims begrenzt, und Sie können die Notation * verwenden, um alle Claims auszugeben.

Weitere Konfigurationsoptionen werden verfügbar, wenn Sie auf Show advanced klicken.

Configure SAML 2.0

Sie können die SAML 2.0 Claim Collection ändern und Claim Tasks mit Claim Transforms und Claim Tasks implementieren. Wenn Sie einen neuen Claim erstellen, fügen Sie den Claim oder * zur Liste Issue claims hinzu, um den Claim an Ihre Anwendung auszugeben.

Multi-Faktor Authentifizierung (MFA) anfordern

Die SAML 2.0 Relying Party (RP) kann MFA anfordern, indem urn:foxids:mfa in RequestedAuthnContext.AuthnContextClassRef eingefügt wird. Sie können dies mit spezifischeren Werten wie urn:foxids:link kombinieren. Siehe MFA von Anwendungen anfordern.

Beispielcode finden Sie im AspNetCoreSamlSample und in der Datei SamlController.cs. Die Eigenschaft AuthnContextClassRef kann in der Methode Login in SamlController.cs gesetzt werden:

public IActionResult Login(string returnUrl = null)
{
    var binding = new Saml2RedirectBinding();
    binding.SetRelayStateQuery(new Dictionary<string, string>
    {
        { relayStateReturnUrl, returnUrl ?? Url.Content("~/") }
    });

    var saml2AuthnRequest = new Saml2AuthnRequest(saml2Config)
    {
        // To require MFA
        RequestedAuthnContext = new RequestedAuthnContext
        {
            Comparison = AuthnContextComparisonTypes.Exact,
            AuthnContextClassRef = new string[] { "urn:foxids:mfa" },
        }
    };

    return binding.Bind(saml2AuthnRequest).ToActionResult();
}
Ihre Privatsphäre

Ihre Privatsphäre

Wir verwenden Cookies, um Ihre Erfahrung auf unseren Websites zu verbessern. Klicken Sie auf 'Alle Cookies akzeptieren', um der Verwendung von Cookies zuzustimmen. Um nicht notwendige Cookies abzulehnen, klicken Sie auf 'Nur notwendige Cookies'.

Weitere Informationen finden Sie in unserer Datenschutzerklärung