Strumenti Utente

Strumenti Sito


guide_pubbliche:howto:identity:shibbolethsp_config

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisione Revisione precedente
Prossima revisione
Revisione precedente
guide_pubbliche:howto:identity:shibbolethsp_config [2025/09/30 09:22]
riccardo.cappone@unipr.it [Flusso autorizzativo adottato dal nostro OP]
guide_pubbliche:howto:identity:shibbolethsp_config [2025/09/30 11:22] (versione attuale)
riccardo.cappone@unipr.it [PKCE (Proof Key for Code Exchange)]
Linea 187: Linea 187:
   ​   ​
   ​   ​
-===== Flusso autorizzativo ​semplificato ​adottato dal nostro OP =====+===== Flusso autorizzativo ​implicito ​adottato dal nostro OP ===== 
 +(solo per i casi di necessità di Token Immediati, Senza Chiamate Back-Channel) 
 response_type => id_token (implicit flow) response_type => id_token (implicit flow)
   ​   ​
Linea 233: Linea 235:
 {{:​guide_pubbliche:​howto:​identity:​code_id_token_token.png?​600|}} {{:​guide_pubbliche:​howto:​identity:​code_id_token_token.png?​600|}}
        
 +===== PKCE (Proof Key for Code Exchange) =====
 +
 +<WRAP center round tip 60%>
 +Il Codice di Autorizzazione con PKCE (Proof Key for Code Exchange) è oggi lo standard di sicurezza raccomandato per l'​autenticazione OpenID Connect (e l'​autorizzazione OAuth 2.0), in particolare per i client pubblici (come le Single Page Application,​ SPA, o le app mobili native).
 +</​WRAP>​
 +
 +Il flusso del Codice di Autorizzazione è intrinsecamente più sicuro del Flusso Implicito perché gestisce lo scambio dei token sul back-channel (server-to-server),​ lontano dal browser, rendendo i token inaccessibili a JavaScript malevolo.
 +
 +PKCE aggiunge un ulteriore livello di sicurezza per i client che non possono custodire un Client Secret (i client pubblici), proteggendo dal rischio che un codice di autorizzazione venga intercettato e utilizzato da un attaccante.
 ===== OIDC client di esempio sviluppato in PhP ===== ===== OIDC client di esempio sviluppato in PhP =====
 [[guide_pubbliche:​howto:​identity:​oidc_client|Esempio di OIDC client scritto in PhP]] [[guide_pubbliche:​howto:​identity:​oidc_client|Esempio di OIDC client scritto in PhP]]