Italiano
  • consent
  • sso
  • authentication
  • idp

Introduzione alla schermata di consenso dell'utente

Cos'è la schermata di consenso dell'utente e come funziona? Questo articolo spiega le idee di base dietro la schermata di consenso dell'utente e come dovrebbe essere utilizzata.

Simeng
Simeng
Developer

Cos'è la schermata di consenso dell'utente

Immagina di iscriverti a una nuova App sociale utilizzando il tuo account Google. Clicchi sul pulsante "Accedi con Google" e vieni reindirizzato a Google per completare il processo di accesso. Dopo aver effettuato correttamente l'autenticazione con Google, vieni reindirizzato a una pagina che ti chiede di consentire a questa App di accedere al tuo profilo del tuo account Google. Qualcosa di simile:

Google Consent Screen

Questa pagina è ciò che chiamiamo la pagina di consenso o schermata di consenso. È un elemento dell'interfaccia utente visualizzato da applicazioni o siti web durante il processo di onboarding. Il suo scopo principale è informare gli utenti sulla raccolta, elaborazione e utilizzo dei loro dati personali e ottenere il loro esplicito consenso per queste attività.

Su una pagina di consenso, agli utenti viene generalmente presentata l'informazione sui tipi di dati che verranno raccolti, come verranno utilizzati e se verranno condivisi con terze parti. Queste informazioni sono cruciali per la trasparenza, consentendo agli utenti di prendere decisioni informate sulla loro privacy e sicurezza dei dati.

Le pagine di consenso sono particolarmente importanti nel contesto delle norme sulla privacy come il Regolamento Generale sulla Protezione dei Dati (GDPR) nell'Unione Europea o il California Consumer Privacy Act (CCPA) negli Stati Uniti, che richiedono alle organizzazioni di ottenere il consenso chiaro e affermativo dagli utenti prima di elaborare le loro informazioni personali.

Quando abbiamo bisogno di una schermata di consenso?

Prima di poter rispondere a questa domanda, dobbiamo comprendere alcuni concetti di base sull'autenticazione dell'utente.

Fornitore di identità (IdP) e Fornitore di servizi (SP)

Come menzionato sopra, lo scopo principale della schermata di consenso è informare gli utenti sulla raccolta, elaborazione e utilizzo dei loro dati personali e ottenere il loro esplicito consenso per queste attività. Pertanto, abbiamo bisogno di una schermata di consenso quando stiamo raccogliendo, elaborando o utilizzando dati personali che appartengono a un'altra parte, come Google.

Nel contesto dell'autenticazione dell'utente, chiamiamo la parte che possiede i dati dell'utente il Fornitore di identità (IdP). Per quanto riguarda l'applicazione che sta richiedendo l'accesso ai dati dell'utente, la chiamiamo Fornitore di servizi (SP). Nell'esempio sopra, Google è l'IdP e l'App sociale è lo SP.

L'IdP è responsabile dell'autenticazione dell'utente e della fornitura delle informazioni del profilo dell'utente allo SP. Lo SP è la parte che ha bisogno delle informazioni del profilo dell'utente per fornire i suoi servizi.

Single sign-on (SSO)

Nell'esempio sopra, l'App sociale sta usando Google come suo IdP. Questo è uno scenario comune nell'industria. Molte applicazioni utilizzano Google, Facebook o altri servizi di terze parti come loro IdP. Questo è chiamato Single Sign-On (SSO). SSO è una proprietà di controllo degli accessi di più sistemi software correlati, ma indipendenti. Con questa proprietà, un utente effettua l'accesso con un unico ID e password per accedere a una delle diverse applicazioni correlate. Puoi fare riferimento a CIAM 101: Autenticazione, Identità, SSO per ulteriori dettagli.

IdP di prima parte vs IdP di terza parte

Il primo IdP di parte è un IdP che è di proprietà della stessa organizzazione dello SP. Lo SP può persino condividere lo stesso nome di dominio dell'IdP. Quindi lo SP sta richiedendo l'accesso ai dati dell'utente che sono di proprietà della stessa organizzazione. Ad esempio, se stai utilizzando Google Workspace, allora Google è il tuo IdP di prima parte.

L'IdP di terza parte, invece, è un IdP che è di proprietà di un'organizzazione diversa da quella dello SP. Lo SP sta richiedendo l'accesso ai dati dell'utente che non sono di proprietà di se stesso. Ad esempio, se stai utilizzando Google come il tuo IdP e accedi a un'app sociale come l'esempio sopra, allora Google è un IdP di terza parte per l'app sociale.

Consenso dell'utente

Ogni volta che un utente accede a un'applicazione, è fondamentale che l'utente sia a conoscenza di quali dati vengono raccolti e come saranno utilizzati.

Per l'IdP di prima parte, questi tipi di informazioni sono solitamente coperte nelle politiche sulla privacy e nei termini di servizio dell'organizzazione. All'utente viene solitamente richiesto di accettare le politiche sulla privacy e i termini di servizio prima di iscriversi al servizio. Pertanto, l'utente è già a conoscenza di quali dati vengono raccolti e di come saranno utilizzati. In questo caso, il consenso dell'utente è implicito.

Tuttavia, è importante che l'IdP mantenga un rigoroso controllo sui dati che possiede. L'IdP non dovrebbe consentire a nessun SP di terze parti di accedere ai dati dell'utente senza il consenso esplicito dell'utente. Qualsiasi accesso ai dati da parte di un SP di terze parti è considerato un'attività di condivisione dei dati. L'utente deve essere informato sull'attività di condivisione dei dati e deve dare il proprio consenso esplicito.

Pertanto, per l'IdP di terza parte, il consenso dell'utente è sempre richiesto. È per questo motivo che tutti i principali IdP, come Google, Facebook e Microsoft, richiedono allo SP di mostrare una schermata di consenso all'utente prima che l'utente possa accedere allo SP.

Ad esempio, nel caso di Google, quando cerchi di creare un client OAuth di Google, ti verrà chiesto di fornire una configurazione dettagliata della schermata di consenso.

Configurazione della schermata di consenso di Google

Questo garantisce che l'utente sia a conoscenza dell'attività di condivisione dei dati e abbia dato il proprio consenso esplicito.

Quali informazioni dovrebbero essere incluse nella schermata di consenso?

Consenso del Demo Screen

È importante che la schermata di consenso fornisca all'utente informazioni sufficienti per prendere una decisione informata. Includendo ma non limitandosi a:

  • Quale parte (SP) sta richiedendo l'accesso ai dati dell'utente?
  • Qual è l'identità attuale dell'utente?
  • Quali dati dell'utente vengono raccolti?
  • Come verranno utilizzati i dati dell'utente?
  • Quali ulteriori servizi forniti dall'IdP o API verranno utilizzati?
  • Quali ulteriori autorizzazioni verranno concesse allo SP?
  • Qual è la politica sulla privacy dello SP?

Tutte le informazioni sopra dovrebbero essere incluse nella schermata di consenso in modo preciso e chiaro. L'utente dovrebbe essere in grado di comprendere le informazioni senza alcuna ambiguità. Questo è particolarmente importante per i dati dell'utente che vengono raccolti e come verranno utilizzati.

È responsabilità dell'IdP assicurarsi che i dati dell'utente siano utilizzati solo per lo scopo per cui l'utente ha prestato il proprio consenso. L'IdP non dovrebbe consentire allo SP di utilizzare i dati dell'utente per qualsiasi altro scopo senza il consenso esplicito dell'utente.

Conclusione

In sintesi, una pagina di consenso serve come meccanismo per ottenere il permesso esplicito dagli utenti riguardo alla gestione dei loro dati, favorendo trasparenza e conformità alle leggi sulla privacy. È attualmente richiesta da tutti i principali IdP per gli SP di terze parti e svolge un ruolo importante nella protezione della privacy degli utenti e della sicurezza dei dati. Soprattutto se stai fornendo un servizio IdP di terze parti.