Docs Italia beta

Documenti pubblici, digitali.

4. Flusso

Il modello di flusso è l’ «OpenID Connect Authorization Code Flow» che è infatti l’unico flusso previsto da iGov.

L’Authorization code flow restituisce un codice di autorizzazione che può essere scambiato per un ID token e/o un access token; Questo flusso è anche la soluzione ideale per sessioni lunghe o aggiornabili attraverso l’uso del refresh token. L’Authorization code flow ottiene l’authorization code dall’authorization endpoint dell’OpenID Provider e tutti i token sono restituiti dal token endpoint.

image0

# Da A Azione
1 Utente RP L’Utente, nella pagina di accesso del Relying Party (RP), seleziona, sul pulsante SPID, l’OpenID Provider (OP) con cui autenticarsi
2 RP OP Authorization server Il Relying Party (RP) prepara un’authenticati on request e la invia all’Authorizati on Endpoint dell’OpendID Provider selezionato dall’utente
3 OP Authorization Server Utente L’OpendID Provider (OP) richiede all’utente l’inserimento delle credenziali, secondo il livello SPID richiesto dal Relying Party (RP), all’utente a cui chiede, una volta autenticato, di autorizzare gli attributi richiesti dal Relying Party (RP)
4 OP Authorization Server RP L’OpenID Provider reindirizza l’utente verso il Redirect URI specificato dal RP, passando un authorization code
5 RP OP Token endpoint L’RP invia l’authorization code ricevuto al Token endpoint dell’OP
6 OP Token endpoint RP L’OP Token endpoint rilascia un ID Token, un Access token, e se richiesto un Refresh token
7 RP UserInfo endpoint L’RP valida l’ID token e registra nella propria sessione tutti i token ricevuti. Per chiedere gli attributi che erano stati autorizzati dall’utente al punto 3, invia l’Access token allo UserInfo endpoint dell’OP
8 OP Userinfo endpoint RP L’OP rilascia gli attributi richiesti

image1