SAML 2.0 applikationsregistrering

FoxIDs SAML 2.0 applikationsregistrering gör det möjligt att ansluta en SAML 2.0 baserad applikation.

SAML (Security Assertion Markup Language) 2.0 är en XML-baserad standard för autentisering och auktorisering som möjliggör säker Single Sign-On (SSO) mellan en Identity Provider (IdP) och en Service Provider (SP). De två SAML 2.0 flödena: SP-Initiated Login flow och IdP-initiated Login flow stöds som standard.

FoxIDs SAML 2.0 applikationsregistrering

Din applikation blir en SAML 2.0 Relying Party (RP) och FoxIDs fungerar som en SAML 2.0 Identity Provider (IdP).

FoxIDs stöder SAML 2.0 redirect and post bindings.

FoxIDs vidarebefordrar också en login hint från SAML Authn request URL genom att använda antingen login_hint eller LoginHint query-parameter när requesten inte innehåller en NameID. Det gör att relying parties som Microsoft Entra och Okta kan förifylla användaridentifieraren i FoxIDs login-upplevelse.

En applikationsregistrering exponerar SAML 2.0 metadata där din applikation kan upptäcka SAML 2.0 Identity Provider (IdP).

Både login, logout och single logout SAML 2.0 profiles stöds. Artifact profile stöds inte.

FoxIDs genererade SAML 2.0 metadata innehåller bara logout och single logout information om logout är konfigurerat i SAML 2.0 applikationsregistreringen.

How to guides:

Configuration

Så konfigurerar du din applikation som en SAML 2.0 Relying Party (RP).

Metadata endpoints

  • IdP metadata: https://foxids.com/tenant-x/environment-y/application-saml-pr1(*)/saml/idpmetadata (ersätt tenant-x, environment-y och application-saml-pr1 med dina värden).
  • Alternativ single endpoint: Authn endpoint returnerar också IdP metadata när det anropas med GET och utan en SAMLRequest. Detta gör att partners som kräver en URL för både metadata-nedladdning och Authn requests kan använda samma adress, t.ex. https://foxids.com/tenant-x/environment-y/application-saml-pr1(*)/saml/authn. När samma endpoint tar emot en SAML AuthnRequest (via redirect eller post binding) utför det normal login flow.

En applikationsregistrering kan stödja login via flera authentication methods genom att lägga till authentication method-namnet i URL:en. Till exempel https://foxids.com/tenant-x/environment-y/application-saml-pr1(login)/saml/idpmetadata (eller /saml/authn) riktar sig mot login metoden. Du kan också använda standard * notation för att aktivera login med alla authentication methods.

Följande skärmbild visar konfigurationen av en FoxIDs SAML 2.0 applikationsregistrering i FoxIDs Control Client. Här skapas konfigurationen med applikationens metadata. Utfärdade claims är begränsade till den konfigurerade uppsättningen; alla claims kan utfärdas med * notation.

Fler konfigurationsalternativ blir tillgängliga genom att klicka Show advanced.

Configure SAML 2.0

Du kan ändra SAML 2.0 claim collection och utföra claim tasks med claim transforms och claim tasks. Om du skapar ett nytt claim, lägg till claimet eller * i listan Issue claims för att utfärda claimet till din applikation.

Require multi-factor authentication (MFA)

SAML 2.0 Relying Party (RP) kan kräva multi-factor authentication genom att ange värdet urn:foxids:mfa i egenskapen RequestedAuthnContext.AuthnContextClassRef.

Du hittar exempel i AspNetCoreSamlSample sample SamlController.cs filen. Egenskapen AuthnContextClassRef kan sättas i Login metoden i SamlController.cs:

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();
}

Din integritet

Vi använder cookies för att göra din upplevelse av våra webbplatser bättre. Klicka på 'Acceptera alla cookies' för att godkänna användningen av cookies. För att avstå från icke-nödvändiga cookies, klicka på 'Endast nödvändiga cookies'.

Besök vår integritetspolicy för mer