SAML 2.0 applicatieregistratie

FoxIDs SAML 2.0 applicatieregistratie maakt het mogelijk om een SAML 2.0 gebaseerde applicatie te koppelen.

SAML (Security Assertion Markup Language) 2.0 is een XML-gebaseerde standaard voor authenticatie en autorisatie die veilige single sign-on (SSO) mogelijk maakt tussen een identity provider (IdP) en een service provider (SP). FoxIDs ondersteunt zowel SP-gestuurde als IdP-gestuurde login.

FoxIDs SAML 2.0 application registration

Uw applicatie wordt een SAML 2.0 Relying Party (RP) en FoxIDs fungeert als een SAML 2.0 Identity Provider (IdP).

FoxIDs ondersteunt SAML 2.0 redirect en post bindings.

FoxIDs stuurt ook een login hint door vanuit de URL van het SAML Authn-verzoek via de query-parameter login_hint of LoginHint wanneer het verzoek geen NameID bevat. Daardoor kunnen relying parties zoals Microsoft Entra ID en Okta de gebruikersidentifier vooraf invullen in de FoxIDs login-ervaring.

Een applicatieregistratie publiceert SAML 2.0 metadata, zodat uw applicatie de SAML 2.0 Identity Provider (IdP) kan ontdekken.

FoxIDs ondersteunt login-, logout- en single logout-SAML 2.0 profiles. Het Artifact-profiel wordt niet ondersteund.

De door FoxIDs gegenereerde SAML 2.0 metadata bevatten alleen logout- en single logout-informatie als logout is geconfigureerd in de SAML 2.0 applicatieregistratie.

Handleidingen:

Configuratie

Zo configureert u uw applicatie als een SAML 2.0 Relying Party (RP).

Metadata-endpoints

  • IdP-metadata: https://foxids.com/tenant-x/environment-y/application-saml-pr1(*)/saml/idpmetadata (vervang tenant-x, environment-y en application-saml-pr1 door uw waarden).
  • Alternatief enkel endpoint: het Authn-endpoint retourneert ook de IdP-metadata wanneer het via GET en zonder SAMLRequest wordt aangeroepen. Hiermee kunnen partners die één URL nodig hebben voor zowel metadata-download als Authn-verzoeken hetzelfde adres gebruiken, bijvoorbeeld https://foxids.com/tenant-x/environment-y/application-saml-pr1(*)/saml/authn. Wanneer hetzelfde endpoint een SAML AuthnRequest ontvangt via redirect of post binding, wordt de normale login-flow uitgevoerd.

Een applicatieregistratie kan login via meerdere authenticatiemethoden ondersteunen door de naam van de authenticatiemethode aan de URL toe te voegen.

Bijvoorbeeld, https://foxids.com/tenant-x/environment-y/application-saml-pr1(login)/saml/idpmetadata of /saml/authn richt zich op de loginmethode login. U kunt ook de standaardnotatie * gebruiken om login via alle authenticatiemethoden in te schakelen.

De onderstaande schermafbeelding toont de configuratie van een FoxIDs SAML 2.0 applicatieregistratie in de FoxIDs Control Client. Hier wordt de configuratie gemaakt op basis van de metadata van de applicatie. Uitgegeven claims worden beperkt tot de geconfigureerde set claims en u kunt de notatie * gebruiken om alle claims uit te geven.

Meer configuratieopties worden beschikbaar wanneer u op Show advanced klikt.

Configure SAML 2.0

U kunt de SAML 2.0 claim collection wijzigen en claim tasks implementeren met claim transforms en claim tasks. Als u een nieuwe claim maakt, voeg de claim of * toe aan de lijst Issue claims om de claim aan uw applicatie uit te geven.

Multi-factor authenticatie (MFA) vereisen

De SAML 2.0 Relying Party (RP) kan MFA vereisen door urn:foxids:mfa op te nemen in RequestedAuthnContext.AuthnContextClassRef. U kunt dit combineren met specifiekere waarden zoals urn:foxids:link. Zie MFA aanvragen vanuit applicaties.

Voorbeeldcode vindt u in AspNetCoreSamlSample en in het bestand SamlController.cs. De eigenschap AuthnContextClassRef kan worden ingesteld in de methode Login in 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();
}
Uw privacy

Uw privacy

We gebruiken cookies om uw ervaring op onze websites te verbeteren. Klik op de knop 'Alle cookies accepteren' om akkoord te gaan met het gebruik van cookies. Om niet-noodzakelijke cookies te weigeren, klikt u op 'Alleen noodzakelijke cookies'.

Bezoek onze privacyverklaring voor meer informatie