Metodo di autenticazione SAML 2.0

Metodo di autenticazione SAML 2.0 di FoxIDs che si fida di un Identity Provider (IdP) SAML 2.0 esterno.

SAML 2.0 e uno standard aperto per lo scambio di dati di autenticazione e autorizzazione tra un Identity Provider (IdP) e un Service Provider (SP). Abilita il Single Sign-On (SSO), consentendo agli utenti di eseguire il login una sola volta e ottenere accesso a piu applicazioni senza doversi autenticare di nuovo.
Sono supportati i due flussi SAML 2.0: il flusso SP-Initiated Login, che e il flusso predefinito, piu comune e consigliato, e il flusso IdP-initiated Login.

SAML 2.0 e ampiamente usato negli ambienti enterprise, dove abilita una federazione di identita sicura tra organizzazioni e applicazioni differenti.

FoxIDs SAML 2.0 authentication method

Configurando un metodo di autenticazione SAML 2.0 e una registrazione applicativa OpenID Connect, FoxIDs diventa un bridge tra SAML 2.0 e OpenID Connect. FoxIDs gestira quindi la connessione SAML 2.0 come Relying Party (RP) / Service Provider (SP) e nella tua applicazione dovrai occuparti solo di OpenID Connect.

E possibile configurare piu metodi di autenticazione SAML 2.0 che possono poi essere selezionati da registrazioni applicative OpenID Connect e registrazioni applicative SAML 2.0.

Configura IdP-Initiated Login e inoltra il login verso applicazioni SAML 2.0 e OpenID Connect.

FoxIDs supporta i binding SAML 2.0 redirect e post. Sono supportati i profili SAML 2.0 di login, logout e single logout. Il profilo Artifact non e supportato.

Un metodo di autenticazione espone metadata SAML 2.0 e puo essere configurato con metadata SAML 2.0 oppure aggiungendo manualmente i dettagli di configurazione.

I metadata SAML 2.0 generati da FoxIDs contengono informazioni di logout e single logout solo se il logout e configurato nel metodo di autenticazione SAML 2.0.

FoxIDs supporta tutti gli identity provider SAML 2.0 (IdP) ed e stato testato con un'ampia gamma di IdP.

Guide pratiche:

Connettere ambienti FoxIDs

Gli ambienti FoxIDs possono essere collegati in due modi:

Scegli Environment Link quando entrambi gli ambienti sono nello stesso tenant e vuoi la configurazione piu semplice. Scegli OpenID Connect quando devi collegare tenant differenti o distribuzioni FoxIDs separate.

Configurazione

Come configurare un Identity Provider (IdP) SAML 2.0 esterno.

L'endpoint metadata del metodo di autenticazione SAML 2.0 di FoxIDs e https://foxids.com/tenant-x/environment-y/(some_external_idp)/saml/spmetadata. Se l'IdP e configurato nel tenant tenant-x e nell'ambiente environment-y con il nome del metodo di autenticazione some_external_idp.

La schermata seguente mostra la configurazione di un metodo di autenticazione SAML 2.0 in FoxIDs Control Client. Qui la configurazione viene creata usando i metadata dell'IdP esterno. I claim inoltrati sono limitati all'insieme configurato; per impostazione predefinita tutti i claim vengono inoltrati con la notazione *.

Ulteriori opzioni di configurazione diventano disponibili facendo clic su Show advanced.

Configure SAML 2.0

Puoi modificare i claim ed eseguire claim task con trasformazioni e attivita dei claim.

La configurazione manuale diventa disponibile disabilitando Automatic update. In questo modo l'IdP non deve esporre o inviare un file metadata e puoi configurare tutto manualmente.

Manual SAML 2.0 configuration

Se stai creando un nuovo claim, aggiungi il claim o * (predefinito) alla lista Forward claims per inoltrarlo alla registrazione applicativa.

IdP-Initiated Login

SAML 2.0 IdP-Initiated Login e un flusso di autenticazione Single Sign-On (SSO) in cui il processo inizia presso l'Identity Provider (IdP) invece che presso il Service Provider (SP). Questo metodo e comunemente usato negli ambienti enterprise per consentire agli utenti di accedere a piu applicazioni con una sola autenticazione.

A differenza dello SP-Initiated Login, lo SP non richiede autenticazione all'IdP. L'IdP invia autonomamente una SAML assertion non richiesta. Questa differenza chiave rende il flusso IdP-Initiated Login meno sicuro del flusso SP-Initiated Login, e per questo motivo IdP-Initiated Login e disabilitato per impostazione predefinita in FoxIDs.

Abilita IdP-Initiated Login.

  1. Apri il metodo di autenticazione SAML 2.0 in FoxIDs Control Client
  2. Fai clic su Show advanced
  3. Scorri fino in fondo alla sezione di configurazione
  4. Abilita IdP-Initiated login
  5. Facoltativamente modifica IdP-Initiated Login - OpenID Connect grant lifetime
  6. Fai clic su Update

Configure SAML 2.0

Quindi configura il metodo di autenticazione SAML 2.0 per fidarsi dell'IdP nello stesso modo in cui faresti per usare SP-initiated login.

IdP Relay State

L'IdP esterno deve inviare un relay state che specifichi verso quale applicazione debba essere inoltrata l'autenticazione. Il relay state deve sempre contenere il nome dell'applicazione app_name e il tipo di applicazione app_type e in alcuni casi deve contenere un URL di reindirizzamento dell'applicazione app_redirect.

Gli elementi hanno ciascuno un nome e un valore e sono separati da &. I valori URL di reindirizzamento devono essere URL encoded. Il valore del tipo di applicazione puo essere saml2 oppure oidc.

Il sample .NET di identity provider (IdP) SAML 2.0 AspNetCoreSamlIdPSample mostra come creare un IdP-Initiated Login con un relay state.

FoxIDs SAML 2.0 authentication method

Applicazione SAML 2.0

Se vuoi inoltrare l'autenticazione all'applicazione SAML 2.0 chiamata my-saml2-app, il relay state e:

app_name=my-saml2-app&app_type=saml2

Questo inoltrera la chiamata di autenticazione al primo endpoint Assertion Consumer Service (ACS) configurato per l'applicazione.

Se vuoi inoltrare l'autenticazione a un altro endpoint ACS configurato https://my-domain.com/auth/acs2, il relay state e:

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

La chiamata di autenticazione viene inoltrata all'applicazione SAML 2.0 come IdP-Initiated Login con una risposta authn SAML 2.0 non richiesta.

Applicazione OpenID Connect

OpenID Connect non supporta IdP-Initiated Login. Pertanto, l'IdP-Initiated Login viene verificato nel metodo di autenticazione e inoltrato all'applicazione OpenID Connect chiamando l'applicazione con l'URL di reindirizzamento app_redirect, che dovrebbe avviare il flusso di login (standard OpenID Connect: Initiating Login from a Third Party).
Hai bisogno di una pagina nell'applicazione OpenID Connect che richieda che l'utente sia autenticato e quindi avvii il flusso di login quando viene chiamata. Un parametro issuer iss viene passato nella query e puoi scegliere se validarlo.
L'applicazione OpenID Connect puo fare una richiesta di login generica con *; FoxIDs sa dove instradare la richiesta di login.

L'applicazione OpenID Connect chiama quindi FoxIDs, che legge il grant IdP-Initiated Login.
In alternativa, senza un grant IdP-Initiated Login, viene chiamato l'IdP esterno con un flusso SP-Initiated Login. L'IdP esterno usa il contesto Single Sign-On (SSO) e risponde a FoxIDs.

Si consiglia di usare la funzionalita di grant IdP-Initiated Login per evitare un round-trip aggiuntivo verso l'IdP esterno.

L'IdP-Initiated Login SAML 2.0 viene quindi tradotto in OpenID Connect e inoltra l'autenticazione all'applicazione OpenID Connect.

Se vuoi inoltrare l'autenticazione all'applicazione OpenID Connect chiamata my-oidc-app con l'URL di avvio login https://my-domain.com/secure-page, il relay state e:

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

L'URL di reindirizzamento dell'applicazione deve essere un URL valido/configurato per l'applicazione OpenID Connect.

La tua privacy

La tua privacy

Usiamo i cookie per migliorare la tua esperienza sui nostri siti. Fai clic sul pulsante 'Accetta tutti i cookie' per acconsentire all'uso dei cookie. Per rifiutare i cookie non essenziali, fai clic su 'Solo cookie necessari'.

Visita la nostra pagina di Informativa sulla privacy per saperne di più