SAML 2.0 authenticatiemethode

FoxIDs SAML 2.0 authenticatiemethode die een externe SAML 2.0 Identity Provider (IdP) vertrouwt.

SAML (Security Assertion Markup Language) 2.0 is een open standaard voor het uitwisselen van authenticatie- en autorisatiegegevens tussen een Identity Provider (IdP) en een Service Provider (SP). Het maakt Single Sign-On (SSO) mogelijk, waardoor gebruikers één keer kunnen inloggen en toegang krijgen tot meerdere applicaties zonder opnieuw te hoeven authenticeren. De twee SAML 2.0 flows worden ondersteund. De SP-Initiated Login flow, die standaard, meest gebruikt en aanbevolen is, en de IdP-initiated Login flow.

SAML 2.0 wordt veel gebruikt in enterprise-omgevingen en maakt veilige identiteitsfederatie mogelijk tussen organisaties en applicaties.

FoxIDs SAML 2.0 authentication method

Door een SAML 2.0 authenticatiemethode en een OpenID Connect applicatieregistratie te configureren wordt FoxIDs een bridge tussen SAML 2.0 en OpenID Connect. FoxIDs behandelt dan de SAML 2.0 verbinding als een Relying Party (RP) / Service Provider (SP) en je hoeft in je applicatie alleen OpenID Connect te gebruiken.

Het is mogelijk om meerdere SAML 2.0 authenticatiemethoden te configureren die vervolgens kunnen worden geselecteerd door OpenID Connect applicatieregistraties en SAML 2.0 applicatieregistraties.

Configureer IdP-Initiated Login en stuur de login door naar SAML 2.0 en OpenID Connect applicaties.

FoxIDs ondersteunt SAML 2.0 redirect and post bindings. Zowel login, logout en single logout SAML 2.0 profiles worden ondersteund. Het Artifact profile wordt niet ondersteund.

Een authenticatiemethode exposeert SAML 2.0 metadata en kan worden geconfigureerd met SAML 2.0 metadata of door de configuratiedetails handmatig toe te voegen.

De door FoxIDs gegenereerde SAML 2.0 metadata bevat alleen logout en single logout informatie als logout is geconfigureerd in de SAML 2.0 authenticatiemethode.

FoxIDs ondersteunt alle SAML 2.0 identity providers (IdP's) en is getest tegen een breed scala aan IdP's.

How to guides:

Configuration

Zo configureer je een externe SAML 2.0 Identity Provider (IdP).

Het FoxIDs SAML 2.0 authenticatiemethode metadata endpoint is https://foxids.com/tenant-x/environment-y/(some_external_idp)/saml/spmetadata. Als de IdP is geconfigureerd in tenant tenant-x en environment environment-y met de authenticatiemethode naam some_external_idp.

De volgende screenshot toont de configuratie van een SAML 2.0 authenticatiemethode in FoxIDs Control Client. Hier is de configuratie gemaakt met de metadata van de externe IdP. De doorgestuurde claims zijn beperkt tot de geconfigureerde set; standaard worden alle claims doorgestuurd met de * notatie.

Meer configuratieopties worden beschikbaar door op Show advanced te klikken.

Configure SAML 2.0

Je kunt claims wijzigen en claim tasks uitvoeren met claim transforms en claim tasks.

Handmatige configuratie wordt beschikbaar door Automatic update uit te schakelen. Op deze manier hoeft de IdP geen metadata-bestand te exposen of te sturen; je kunt alles handmatig configureren.

Manual SAML 2.0 configuration

Als je een nieuw claim aanmaakt, voeg het claim of * (default) toe aan de lijst Forward claims om het claim door te sturen naar de applicatieregistratie.

IdP-Initiated Login

SAML 2.0 IdP-Initiated Login is een Single Sign-On (SSO) authenticatieflow waarbij het proces start bij de Identity Provider (IdP) in plaats van de Service Provider (SP). Deze methode wordt vaak gebruikt in enterprise-omgevingen om gebruikers toegang te geven tot meerdere applicaties met één authenticatie.

In tegenstelling tot SP-Initiated Login vraagt de SP geen authenticatie aan bij de IdP. De IdP stuurt uit eigen initiatief een unsolicited SAML assertion. Dit belangrijke verschil maakt de IdP-Initiated Login flow minder veilig dan de SP-Initiated Login flow, en daarom is IdP-Initiated Login standaard uitgeschakeld in FoxIDs.

Schakel IdP-Initiated Login in.

  1. Open de SAML 2.0 authenticatiemethode in FoxIDs Control Client
  2. Klik Show advanced
  3. Scroll naar de onderkant van de configuratiesectie
  4. Schakel IdP-Initiated login in
  5. Optioneel wijzig IdP-Initiated Login - OpenID Connect grant lifetime
  6. Klik Update

Configure SAML 2.0

Configureer de SAML 2.0 authenticatiemethode zodat deze de IdP vertrouwt op dezelfde manier als bij SP-initiated login.

IdP Relay State

De externe IdP moet een relay state sturen die aangeeft naar welke applicatie de authenticatie moet worden doorgestuurd. De relay state moet altijd de applicatienaam app_name en het applicatietype app_type bevatten en in sommige gevallen een applicatie redirect URL app_redirect.

De elementen hebben elk een naam en een waarde en worden gescheiden door &. Redirect URL-waarden moeten URL-encoded zijn. De applicatie typewaarde kan saml2 of oidc zijn.

De SAML 2.0 identity provider (IdP) .NET sample AspNetCoreSamlIdPSample laat zien hoe je een IdP-Initiated Login met een relay state maakt.

FoxIDs SAML 2.0 authentication method

SAML 2.0 applicatie

Als je de authenticatie wilt doorsturen naar de SAML 2.0 applicatie met de naam my-saml2-app, is de relay state:

app_name=my-saml2-app&app_type=saml2

Dit stuurt de authenticatie call door naar het eerste Assertion Consumer Service (ACS) endpoint dat voor de applicatie is geconfigureerd.

Als je de authenticatie wilt doorsturen naar een ander geconfigureerd ACS endpoint https://my-domain.com/auth/acs2, is de relay state:

app_name=my-saml2-app&app_type=saml2&app_redirect=https%3A%2F%2Fmy-domain.com%2Fauth%2Facs2

De authenticatie call wordt doorgestuurd naar de SAML 2.0 applicatie als een IdP-Initiated Login met een unsolicited SAML 2.0 authn response.

OpenID Connect applicatie

OpenID Connect ondersteunt geen IdP-Initiated Login. Daarom wordt de IdP-Initiated Login geverifieerd in de authenticatiemethode en doorgestuurd naar de OpenID Connect applicatie door de applicatie aan te roepen met redirect URL app_redirect die de login flow moet starten (OpenID Connect standard: Initiating Login from a Third Party). Je hebt een pagina nodig in de OpenID Connect applicatie die vereist dat de gebruiker is geauthenticeerd en daardoor de login flow start wanneer deze wordt aangeroepen. Een issuer iss parameter wordt meegegeven in de query die je optioneel kunt valideren. De OpenID Connect applicatie kan een algemene login request doen met *, FoxIDs weet waar de login request naartoe moet.

Daarna roept de OpenID Connect applicatie FoxIDs aan, dat de IdP-Initiated Login grant leest. Alternatief, zonder IdP-Initiated Login grant wordt de externe IdP aangeroepen met een SP-Initiated Login flow. De externe IdP gebruikt de Single Sign-On (SSO) context en antwoordt aan FoxIDs.

Het wordt aanbevolen om de IdP-Initiated Login grant functionaliteit te gebruiken om een extra round-trip naar de externe IdP te vermijden.

De SAML 2.0 IdP-Initiated Login wordt vervolgens vertaald naar OpenID Connect en stuurt de authenticatie door naar de OpenID Connect applicatie.

Als je de authenticatie wilt doorsturen naar de OpenID Connect applicatie met de naam my-oidc-app met login initiating URL https://my-domain.com/secure-page, is de relay state:

app_name=my-oidc-app&app_type=oidc&app_redirect=https%3A%2F%2Fmy-domain.com%2Fsecure-page

De applicatie redirect URL moet een geldige/geconfigureerde URL zijn voor de OpenID Connect applicatie.

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