Identity Provider Proxy
Un Identity Provider Proxy (abbreviato IdPP oppure IDPP) è un sistema che si frappone tra l'utente e un servizio applicativo web che necessita di avere un'autenticazione federata prima di essere erogato. L'Identity Provider Proxy verifica se l'utente che richiede il servizio (punto 1 dello schema) si è già autenticato e nel caso non si sia ancora autenticato, viene ridiretto verso il servizio dell'Identity Provider (abbreviato IdP oppure IDP) per eseguire l'autenticazione (punto 2 dello schema). Una volta che l'Identity Provider ha effettuato l'autenticazione viene ridiretto nuovamente sull'IdPP che verifica se quanto ricevuto è valido e se l'utente ha effettuato l'autenticazione con successo (punto 3 dello schema). Una volta verificato che l'autenticazione sia avvenuta con successo da parte del'Identity Provider, l'IdPP permette alla richiesta di raggiungere il servizio per essere erogato (punto 4 dello schema). l'IdPP aggiunge all'header http i dati identificativi dell'utente, ricevuti dall'Identity Provider ed eventualmente li integra con altri dati in modo che il servizio applicativo web possa leggere il profilo dell'utente ed eseguire un login automatico (SSO) con le sue caratteristiche o ambiti di gestione. Il formato che descrive i dati di profilo dell'utente all'interno dell'header http può essere variabile in base alle esigenze ma ormai si preferisce utilizzare il formato JWT (JSON Web Token). All'applicazione web resta solamente da interpretare i dati in formato JWT ed eventualmente chiedere conferma dell'autenticità dei dati ricevuti all'IdPP. Questa ultima operazione di verifica dei dati JWT proveniente dall'IdPP da parte del servizio web è facoltativa in dipendenza della sicurezza di comunicazione che esiste tra l'applicazione web nella intranet e l'IdPP.

Di seguito l'architettura e la sequenza delle operazioni che intervengono per effettuare una autenticazione federata con un IdPP.
Vantaggi
I vantaggi di un IdPP si apprezzano nelle infrastrutture enterprise dove il sistema risolve i problemi di autenticazione e autorizzazione per molteplici servizi applicativi del backend. L'infrastruttura così realizzata permette di avere un nuovo layer di autenticazione e autorizzazione trasversale a tutti i servizi posti nel backend. Questa architettura si traduce in molteplici vantaggi sia di sicurezza sia di velocità di implementazione e quindi risparmio.
- Flessibilità nell'imporre una autenticazione forte per qualsiasi servizio
- Uniformità all'interno del datacenter di gestione delle autenticazioni
- Semplicità dell'evoluzione e aggiornamento dei sistemi di autenticazione che essendo strutturali non necessitano di essere aggiornati sui singoli applicativi
- Rispondenza alle norme di legge nel trattamento dei dati personali
- Rispondenza alle norme di legge per le piattaforme governative (CIE - SPID)
- Unificazione del sistema di logging dei servizi che necessitano di autenticazione
- Semplificazione dell'infrastruttura
Architectura
L'architettura dell'erogazione di servizi si arricchisce dello strato IdPP a livello infrastrutturale. Lo strato applicativo acquisisce il profilo degli utenti attraverso informazioni aggiuntive nell'Header http realizzando sistemi robusti di SSO infrastrutturali.
- Firewall
- WAF
- IdPP
- LoadBalancing
- Services
I sistemi più evoluti riuniscono in un unico prodotto le funzionalità WAF, LoadBalancing e IdPP semplificando le operazioni nei datacenter.
Tecnologie correlate
- JSON Web Token
- SAML 2.0
- OAuth
- OpenID
- Single sign-on - SSO
- Carta d'identità elettronica italiana
- Shibboleth (Internet2) – Sistema di identità federato mirato agli ambienti educativi
- National identity cards in the European Economic Area
- Italian electronic identity card
- SPID
Referenze
- Pubblicazione IEEE (Institute of Electrical and Electronic Engineers) DOI: 10.1109/ANTS.2010.5983520
- Semantic Scholar DOI:10.1109/ANTS.2010.5983520Corpus ID: 42910497 [2]