Panoramica su consenso e privacy

In questa pagina viene descritta l'API Consent Management e come utilizzarla per gestire il consenso e la privacy degli utenti.

L'API Consent Management è un componente dell'architettura del consenso e della privacy e fornisce una gestione scalabile e sicura del consenso degli utenti e della privacy dei dati. L'API Consent Management archivia le informazioni sul consenso che ricevi dagli utenti, tiene traccia dei dati consentiti per ogni caso d'uso e aiuta la tua applicazione a utilizzare i dati solo in base alle indicazioni dei tuoi utenti.

Flusso di informazioni dell'API Consent Management

Di seguito è riportato il flusso delle informazioni relative al consenso e alla privacy nell'API Consent Management:

  1. L'applicazione presenta opzioni di privacy a un utente, quindi crea o modifica un record del consenso all'interno dell'API Consent Management per rappresentare la decisione dell'utente.
  2. Quando l'applicazione scrive dati nei vari datastore, registra la località e le caratteristiche di tali dati con l'istanza dell'API Consent Management.
  3. Quando un'applicazione deve determinare se i dati sono stati autorizzati per un determinato caso d'uso, invia una richiesta all'API Consent Management con i dati richiesti e l'utilizzo proposto.
  4. L'API Consent Management confronta i dati richiesti e l'utilizzo proposto con i consensi archiviati e restituisce una risposta positiva se esiste un consenso valido. Se non esiste un consenso valido, viene restituita una risposta negativa.

Il seguente diagramma mostra il flusso di informazioni dell'API Consent Management:

flusso di dati per il consenso

Per ulteriori informazioni su come vengono organizzati i dati relativi al consenso nell'API Consent Management, consulta la pagina Modello dei dati dell'API Consent Management.

Punto decisionale relativo alle norme

L'API Consent Management funge da punto decisionale relativo alle norme all'interno dell'architettura per il consenso e la privacy, nel seguente modo:

  1. Archivia le norme relative al consenso concesse dagli utenti delle tue applicazioni.
  2. Accetta le query di accesso ai dati effettuate da applicazioni client autorizzate.
  3. Valuta le query di accesso in base ai criteri di consenso archiviati.
  4. Definisce l'accesso per applicare i criteri di consenso per le applicazioni client.

Applicazione dei criteri

L'API Consent Management supporta l'applicazione delle norme nell'architettura per il consenso e la privacy, come segue:

  1. Elabora le query per la determinazione degli accessi effettuate da applicazioni o punti di applicazione dei criteri.
  2. Valuta se è possibile accedere a una risorsa per uno scopo specifico.
  3. Determina tutte le risorse a cui è possibile accedere per uno scopo specifico.
  4. Collega le risorse agli attributi e alle norme relative al consenso, in modo che i punti di applicazione devono specificare solo gli attributi della richiesta e un nome della risorsa facoltativo.
  5. Restituisce le determinazioni degli accessi utilizzando l'attuale stato del consenso, anche quando i consensi vengono aggiunti, aggiornati o revocati.

Puoi implementare più di un pattern di applicazione delle norme utilizzando l'API Consent Management all'interno della tua architettura per consenso e privacy. Il seguente elenco mostra esempi di pattern di applicazione dei criteri:

  • Applicazione da parte di applicazioni attendibili. Le applicazioni che hanno verificato l'identità e le qualifiche di un utente possono inoltrare le proprietà pertinenti all'API Consent Management. Ciò consente agli utenti di inviare o aggiornare i consensi e consente alle domande, con qualifiche verificate, di accedere solo alle informazioni per cui è stato dato il consenso per il loro caso d'uso.
  • Applicazione da parte del middleware del cliente. Le applicazioni che richiedono la verifica dell'identità e delle qualifiche di un utente possono utilizzare l'API Consent Management per determinare se l'accesso è consentito per una determinata richiesta.
  • Applicazione da parte dei server delle risorse. I server delle risorse possono utilizzare l'identità di un utente per recuperare le qualifiche da altre applicazioni, se necessario, e quindi chiamare l'API Consent Management per determinare l'accesso prima di soddisfare le richieste.

Rappresentazione delle norme

Le norme relative al consenso all'interno dell'API Consent Management sono composte da un insieme di valori degli attributi delle risorse che definiscono i dati a cui si applicano i criteri, e da una regola di autorizzazione che definisce le condizioni in base alle quali il criterio è valido.

Quando vengono specificati più valori per un singolo attributo di risorsa, il criterio viene applicato ai dati che corrispondono a uno qualsiasi di questi valori. Quando in un criterio vengono visualizzati più attributi della risorsa, ciascuno di questi attributi deve corrispondere affinché il criterio venga applicato.

Le regole di autorizzazione utilizzano una variante vincolata del linguaggio CEL (Common Expression Language) per descrivere in modo flessibile le relazioni tra i valori degli attributi della richiesta che consentono l'accesso ai dati pertinenti. Per ulteriori informazioni sul CEL, consulta la sezione Common Expression Language.

Le risorse per il consenso possono contenere più norme sul consenso che potrebbero rappresentare una risposta positiva alle domande relative al consenso presentate a un utente. Le norme relative al consenso potrebbero essere utilizzate anche per rappresentare interi moduli di consenso o decisioni organizzative e amministrative.

Il seguente diagramma mostra come sono rappresentate le norme nell'API Consent Management:

norme sul consenso

Questo diagramma mostra come creare criteri di consenso semplici utilizzando gli attributi di risorse e richieste. Puoi creare criteri più complessi combinando due o più criteri.

L'API Consent Management archivia i seguenti tipi di record del consenso:

  • Artefatti del consenso: archivia i documenti accettati o firmati dall'utente. Questi record possono contenere PDF o immagini delle schermate mostrate all'utente durante la procedura di consenso. Possono anche essere utilizzati per archiviare firme, timestamp e altre informazioni importanti che documentano la procedura di consenso.
  • Risorse per il consenso: descrivi il consenso che è stato dato dall'utente in base agli attributi per il consenso configurati. L'API Consent Management valuta questi record per determinare se i dati hanno il consenso per un caso d'uso. Le risorse di consenso contengono il consenso concesso e lo stato del consenso. Questi record possono anche essere collegati agli artefatti del consenso corrispondenti.

Per saperne di più sui record relativi al consenso, consulta Creazione e aggiornamento dei consensi degli utenti.

Gestione dei dati

L'API Consent Management può gestire i dati archiviati nei tuoi schemi su Google Cloud, on-premise o presso un altro cloud provider, a condizione che i dati possano essere descritti utilizzando una stringa. L'API Consent Management utilizza le mappature dei dati utente per monitorare i dati gestiti senza che debbano essere archiviati all'interno del servizio stesso.

Ogni mappatura dei dati utente contiene un ID dati, uno User-ID e un set di valori per gli attributi delle risorse. L'ID dati è una stringa che identifica in modo univoco i dati rappresentati dalla mappatura dei dati utente. Lo User-ID è un identificatore opaco che collega i dati a un utente. I valori degli attributi delle risorse descrivono le caratteristiche dei dati utilizzando un vocabolario definito dalle risorse di definizione degli attributi.

Di seguito sono riportate le posizioni di archiviazione comuni per i dati gestiti dal consenso:

  • Archivi FHIR
  • BigQuery
  • Cloud Storage

Per saperne di più sulla creazione di mappature dei dati utente, consulta Registrazione dei dati utente.

Determinazione dell'accesso

Le richieste di determinazione dell'accesso vengono effettuate da applicazioni che devono sapere se l'uso proposto è autorizzato ad accedere a un elemento di dati specifico, a tutti gli elementi di dati associati a un utente o a interi datastore. L'API Consent Management determina se una richiesta è consentita valutando se esiste o meno un consenso valido che concede l'autorizzazione per i dati specificati e l'uso proposto. L'API Consent Management esegue questa valutazione come segue:

  1. L'API Consent Management riceve una richiesta di determinazione dell'accesso con valori dell'attributo di richiesta per l'uso proposto e una risorsa di destinazione o un intervallo di risorse di destinazione descritte dagli ID utente o dai valori degli attributi delle risorse.
  2. Se viene specificato un intervallo di risorse di destinazione, l'API Consent Management determina le risorse che corrispondono all'intervallo. Ad esempio, se definisci un intervallo di valori di attributi delle risorse, tutte le risorse comprese in questo intervallo vengono utilizzate nella richiesta di determinazione dell'accesso.
  3. I consensi per tutte le risorse corrispondenti vengono identificati.
  4. L'uso proposto viene valutato in base alle regole di autorizzazione dei consensi pertinenti.
  5. Se una delle regole di autorizzazione consente questa combinazione di valori degli attributi della richiesta, viene restituita una determinazione dell'accesso positiva per ogni risorsa valutata.

Per impostazione predefinita, la determinazione dell'accesso viene effettuata solo sui consensi attivi. I consensi nello stato di bozza possono essere inclusi nella determinazione dell'accesso specificandoli direttamente nella richiesta di determinazione dell'accesso. I consensi scaduti, revocati o in stato rifiutato vengono ignorati in tutte le richieste di determinazione dell'accesso.

Per ulteriori informazioni su come effettuare richieste di determinazione dell'accesso, consulta la sezione Determinazione dell'accesso.