Questa pagina descrive l'API Consent Management e come utilizzarla per gestire il consenso e la privacy degli utenti.
L'API Consent Management è un componente dell'architettura per il consenso e la privacy e consente di gestire in modo scalabile e sicuro il consenso e la privacy dei dati degli utenti. L'API Consent Management memorizza 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 come indicato dagli utenti.
Flusso di informazioni dell'API Consent Management
Il flusso di informazioni su consenso e privacy all'interno dell'API Consent Management è il seguente:
- La tua applicazione presenta le opzioni per la privacy a un utente, quindi crea o rivede un record del consenso nell'API Consent Management per rappresentare la decisione dell'utente.
- Quando l'applicazione scrive i dati nei vari datastore, registra la posizione e le caratteristiche di questi dati con l'istanza dell'API Consent Management.
- Quando un'applicazione deve stabilire se è stato dato il consenso per un determinato caso d'uso, invia una richiesta all'API Consent Management con i dati richiesti e l'utilizzo proposto.
- L'API Consent Management confronta i dati richiesti e l'utilizzo proposto con i consensi memorizzati e restituisce una risposta positiva se esiste un consenso valido. Viene restituita una risposta negativa se non esiste un consenso valido.
Il seguente diagramma mostra il flusso di informazioni dell'API Consent Management:
Per ulteriori informazioni su come sono organizzati i dati sul consenso all'interno dell'API Consent Management, consulta il modello di dati dell'API Consent Management.
Punto decisionale relativo alle norme
L'API Consent Management funge da punto di decisione sulle norme all'interno dell'architettura del consenso e della privacy come segue:
- Memorizza le norme di consenso concesse dagli utenti delle tue applicazioni.
- Accetta le query di accesso ai dati effettuate da applicazioni client autorizzate.
- Valuta le query di accesso in base ai criteri di consenso archiviati.
- Effettua determinazioni di accesso per applicare i criteri di consenso per le applicazioni client.
Applicazione dei criteri
L'API Consent Management supporta l'applicazione dei criteri all'interno dell'architettura del consenso e della privacy come segue:
- Elabora le query di determinazione dell'accesso effettuate da applicazioni o punti di applicazione dei criteri.
- Valuta se è possibile accedere a una risorsa per uno scopo specifico.
- Determina tutte le risorse a cui è possibile accedere per uno scopo specifico.
- Collega le risorse agli attributi e ai criteri di consenso in modo che i punti di applicazione devano solo specificare gli attributi della richiesta e un nome della risorsa facoltativo.
- Restituisce le determinazioni di accesso utilizzando lo stato del consenso corrente, anche se i consensi vengono aggiunti, aggiornati o revocati.
Puoi implementare più di un modello di applicazione dei criteri utilizzando l'API Consent Management all'interno della tua architettura di consenso e privacy. L'elenco seguente mostra esempi di pattern di applicazione delle norme:
- 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. In questo modo, gli utenti possono inviare o aggiornare i consensi e le applicazioni con le qualifiche verificate possono 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 poi chiamare l'API Consent Management per determinare l'accesso prima di soddisfare le richieste.
Rappresentazione delle norme
I criteri per il consenso all'interno dell'API Consent Management sono composti da un insieme di valori degli attributi della risorsa che definiscono a quali dati si applica il criterio e da una regola di autorizzazione che definisce le condizioni in cui il criterio è valido.
Quando vengono specificati più valori per un singolo attributo della risorsa, il criterio viene applicato ai dati corrispondenti a uno di questi valori. Quando in un criterio sono presenti più attributi della risorsa, per l'applicazione del criterio è necessario che tutti questi attributi corrispondano.
Le regole di autorizzazione utilizzano una variazione vincolata del linguaggio Common Expression Language (CEL) per descrivere in modo flessibile le relazioni tra i valori degli attributi della richiesta che consentono l'accesso ai dati pertinenti. Per maggiori informazioni su CEL, consulta Common Expression Language.
Le risorse per il consenso possono contenere più criteri di consenso che potrebbero rappresentare una risposta positiva alle domande sul consenso presentate a un utente. I criteri relativi al consenso potrebbero essere utilizzati anche per rappresentare interi moduli di consenso o decisioni organizzative e amministrative.
Il seguente diagramma mostra come vengono rappresentati i criteri nell'API Consent Management:
Questo diagramma mostra come creare norme relative al consenso semplici utilizzando gli attributi delle risorse e delle richieste. È possibile creare criteri più complessi combinando due o più criteri.
Record del consenso
L'API Consent Management memorizza i seguenti tipi di record di consenso:
- Elementi relativi al consenso: memorizzano 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 essere utilizzati anche per memorizzare firme, timestamp e altre informazioni importanti che documentano la procedura di approvazione.
- Risorse per il consenso: descrivono il consenso concesso dall'utente in termini degli attributi di consenso configurati. L'API Consent Management valuta questi record per determinare se è stato dato il consenso per i dati 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 relativi al consenso corrispondenti.
Per saperne di più sui record del consenso, consulta Creare e aggiornare i consensi degli utenti.
Gestione dati
L'API Consent Management può gestire i dati archiviati nei tuoi schemi su Google Cloud, on-premise o con un altro provider cloud, 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, un ID utente e un insieme di valori degli attributi della risorsa. L'ID dati è una stringa che identifica in modo univoco i dati rappresentati dalla mappatura dei dati utente. L'ID utente è un identificatore opaco che collega questi dati a un utente. I valori degli attributi della risorsa 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 in base al consenso:
- Archivi FHIR
- BigQuery
- Cloud Storage
Per ulteriori informazioni 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'utilizzo proposto è consentito per 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'utilizzo proposto. L'API Consent Management esegue questa valutazione nel seguente modo:
- L'API Consent Management riceve una richiesta di determinazione dell'accesso con i valori degli attributi della richiesta per l'utilizzo proposto e una risorsa di destinazione o un intervallo di risorse di destinazione descritte da ID utente o valori degli attributi della risorsa.
- Se viene specificato un intervallo di risorse di destinazione, l'API Consent Management determina le risorse corrispondenti all'intervallo. Ad esempio, se definisci un intervallo di valori degli attributi delle risorse, tutte le risorse all'interno di questo intervallo vengono utilizzate nella richiesta di determinazione dell'accesso.
- Vengono identificati i consensi per tutte le risorse corrispondenti.
- L'utilizzo proposto viene valutato in base alle regole di autorizzazione dei consensi pertinenti.
- Se una delle regole di autorizzazione consente questa combinazione di valori degli attributi della richiesta, viene restituita una determinazione di accesso positiva per ogni risorsa valutata.
Per impostazione predefinita, la determinazione dell'accesso viene effettuata solo sui consensi attivi. I consensi in stato di bozza possono essere inclusi nella determinazione dell'accesso specificandoli direttamente nella richiesta di determinazione dell'accesso. I consensi scaduti, revocati o nello stato di rifiuto vengono ignorati in tutte le richieste di determinazione dell'accesso.
Per ulteriori informazioni su come effettuare richieste di determinazione dell'accesso, consulta Effettuare determinazioni dell'accesso.