Mascherare i dati delle colonne
Questo documento illustra come implementare il mascheramento dei dati per: oscurare selettivamente i dati sensibili. Implementando il mascheramento dei dati, puoi fornire diversi livelli di visibilità a gruppi di utenti differenti. Per informazioni generali, vedi Introduzione al mascheramento dei dati.
Puoi implementare la mascheratura dei dati aggiungendo un criterio dei dati a una colonna. Per aggiungere dati criterio di mascheramento in una colonna, devi completare i seguenti passaggi :
- Crea una tassonomia con almeno un tag di criteri.
- (Facoltativo) Concedi il ruolo Lettore granulare Data Catalog a uno o più entità in uno o più dei tag di criteri che hai creato.
- Crea fino a tre criteri dei dati per il tag di criteri, per mappare le regole di mascheramento e le entità (che rappresentano utenti o gruppi) a quel tag.
- Imposta il tag di criteri su una colonna. che mappa i criteri dei dati associati il tag di criteri nella colonna selezionata.
- Assegna agli utenti che devono avere accesso ai dati mascherati il ruolo Lettore mascherato BigQuery. Come best practice, assegna il ruolo Lettore mascherato BigQuery a livello di criteri dei dati. L'assegnazione del ruolo a livello di progetto o superiore concede agli utenti le autorizzazioni per tutti i criteri relativi ai dati del progetto, il che può causare problemi dovuti a autorizzazioni eccessive.
Puoi utilizzare la console Google Cloud o l'API BigQuery Data Policy per lavorare con i criteri dei dati.
Una volta completati questi passaggi, gli utenti che eseguono query sulla colonna ricevono dati non mascherati, dati mascherati o un errore di accesso negato, a seconda dei gruppi a cui appartengono e dei ruoli che sono stati concessi. Per maggiori informazioni le informazioni, vedi Come interagiscono i ruoli Lettore mascherato e Lettore granulare.
Prima di iniziare
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Data Catalog and BigQuery Data Policy APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Data Catalog and BigQuery Data Policy APIs.
- BigQuery viene attivato automaticamente nei nuovi progetti, ma potrebbe essere necessario attivarlo in un progetto esistente.
Enable the BigQuery API.
- Se crei una norma dei dati che fa riferimento a una routine di mascheramento personalizzata, crea la funzione definita dall'utente di mascheramento associata in modo che sia disponibile nelle passaggi.
Creazione tassonomie
All'account utente o di servizio che crea una tassonomia deve essere concesso il ruolo Amministratore dei tag dei criteri del catalogo di dati.
Console
- Apri la pagina Tassonomie di tag di criterio nella nella console Google Cloud.
- Fai clic su Crea tassonomia.
Nella pagina Nuova tassonomia:
- In Nome tassonomia, inserisci il nome della tassonomia che vuoi creare.
- In Descrizione, inserisci una descrizione.
- Se necessario, modifica il progetto elencato in Progetto.
- Se necessario, modifica la località indicata in Posizione.
- In Tag delle norme, inserisci un nome e una descrizione per il tag delle norme.
- Per aggiungere un tag di criteri secondario a un tag di criteri, fai clic su Aggiungi sottotag.
- Per aggiungere un nuovo tag di criteri allo stesso livello di un altro tag di criteri, fai clic su + Aggiungi tag di criteri.
- Continua ad aggiungere tag di criteri e tag di criteri figlio in base alle esigenze della tua tassonomia.
- Al termine della creazione dei tag di criteri per la gerarchia, fai clic su Crea.
API
Per utilizzare tassonomie esistenti, richiama
taxonomies.import
anziché i primi due passaggi della procedura seguente.
- Chiama
taxonomies.create
per creare una tassonomia. - Chiama
taxonomies.policytag.create
per creare un tag di criteri.
Utilizzare i tag di criteri
Per ulteriori informazioni su come utilizzare i tag di criteri, ad esempio come visualizzare aggiornarle, consulta Utilizzare i tag di criteri. Per le best practice, vedi Best practice per l'utilizzo dei tag di criteri in BigQuery.
Crea criteri relativi ai dati
L'account utente o di servizio che crea un criterio relativo ai dati deve disporre delle autorizzazioni bigquery.dataPolicies.create
, bigquery.dataPolicies.setIamPolicy
e datacatalog.taxonomies.get
.
Se crei una norma dei dati che fa riferimento a una routine di mascheramento personalizzata, devi disporre anche delle autorizzazioni di routine.
Queste autorizzazioni sono incluse nei ruoli Amministratore BigQuery e Proprietario dati BigQuery.
Puoi creare fino a nove criteri dei dati per un tag di criteri. Una di queste norme è riservato a impostazioni di controllo dell'accesso a livello di colonna.
Console
- Apri la pagina Tassonomie di tag di criterio nella nella console Google Cloud.
- Fai clic sul nome della tassonomia da aprire.
- Seleziona un tag criterio.
- Fai clic su Gestisci criteri relativi ai dati.
- In Nome criterio dati, digita un nome per il criterio dei dati. Il nome del criterio relativo ai dati deve essere univoco all'interno del progetto in cui si trova.
- Per Regola di mascheramento, scegli una regola di mascheramento predefinita o una routine di mascheramento personalizzata. Se selezioni una routine di mascheramento personalizzata, assicurati
che hai sia
bigquery.routines.get
che Autorizzazionibigquery.routines.list
a livello di progetto. - In Principale, digita il nome di uno o più utenti o gruppi a cui vuoi concedere l'accesso mascherato alla colonna. Tieni presente che a tutti gli utenti e ai gruppi inseriti qui viene concesso il ruolo Lettore mascherato BigQuery.
- Fai clic su Invia.
API
Chiama il metodo
create
. SuperaDataPolicy
che soddisfi i seguenti requisiti:- Il campo
dataPolicyType
è impostato suDATA_MASKING_POLICY
. - Il campo
dataMaskingPolicy
identifica la regola o la routine di mascheramento dei dati da utilizzare. - Il campo
dataPolicyId
fornisce un nome per il criterio dei dati che è univoco all'interno del progetto in cui si trova il criterio dei dati.
- Il campo
Chiama il metodo
setIamPolicy
e passa unPolicy
. L'Policy
deve identificare le entità a cui viene concesso l'accesso ai dati mascherati e specificaroles/bigquerydatapolicy.maskedReader
per il camporole
.
Impostare i tag di criteri sulle colonne
Imposta un criterio dei dati su una colonna collegando il tag di criteri associato al criterio dei dati alla colonna.
L'account utente o di servizio che imposta un tag criterio deve disporre delle autorizzazioni datacatalog.taxonomies.get
e bigquery.tables.setCategory
.
datacatalog.taxonomies.get
è incluso nei ruoli Amministratore dei tag delle norme di Data Catalog e Visualizzatore progetto.
bigquery.tables.setCategory
è incluso nei ruoli
BigQuery Admin (roles/bigquery.admin
) e
BigQuery Data Owner (roles/bigquery.dataOwner
).
Per visualizzare le tassonomie e i tag dei criteri in tutti i progetti di un'organizzazione nella console Google Cloud, gli utenti devono disporre dell'autorizzazione resourcemanager.organizations.get
, inclusa nel ruolo Visualizzatore organizzazione.
Console
Imposta il tag di criteri modificando uno schema utilizzando il metodo nella console Google Cloud.
Apri la pagina BigQuery nella console Google Cloud.
In BigQuery Explorer, individua e seleziona la tabella che vuoi aggiornare. Viene visualizzato lo schema della tabella.
Fai clic su Modifica schema.
Nella schermata Schema attuale, seleziona la colonna di destinazione e fai clic su Aggiungi tag delle norme.
Nella schermata Aggiungi un tag delle norme, individua e seleziona il tag delle norme da applicare alla colonna.
Fai clic su Seleziona. Dovresti vedere una schermata simile alla seguente:
Fai clic su Salva.
bq
Scrivi lo schema in un file locale.
bq show --schema --format=prettyjson \ project-id:dataset.table > schema.json
dove:
- project-id è l'ID progetto.
- dataset è il nome del set di dati che contiene la tabella che stai aggiornando.
- table è il nome della tabella che stai aggiornando.
Modifica schema.json per impostare un tag di criteri su una colonna. Per il valore del parametro Campo
names
dipolicyTags
, utilizza il nome risorsa del tag di criteri.[ ... { "name": "ssn", "type": "STRING", "mode": "REQUIRED", "policyTags": { "names": ["projects/project-id/locations/location/taxonomies/taxonomy-id/policyTags/policytag-id"] } }, ... ]
Aggiorna lo schema.
bq update \ project-id:dataset.table schema.json
API
Per le tabelle esistenti, chiama tables.patch
o per le nuove tabelle richiama
tables.insert
. Utilizza la proprietà schema
dell'oggetto Table
che passi per impostare un tag criterio nella definizione dello schema. Guarda l'esempio della riga di comando
per vedere come impostare un tag di criteri.
Quando lavori con una tabella esistente, è preferibile il metodo tables.patch
,
perché il metodo tables.update
sostituisce l'intera risorsa della tabella.
Applica controllo di accesso
Quando crei un criterio dei dati per un tag di criteri, il controllo dell'accesso viene automaticamente in modo forzato. Tutte le colonne a cui è applicato il tag di criteri restituiscono dati mascherati in risposta alle query degli utenti con il ruolo Lettore mascherato.
Per interrompere l'applicazione del controllo dell'accesso, devi prima eliminare tutti i criteri dei dati associati ai tag criterio nella tassonomia. Per ulteriori informazioni, consulta Applicare il controllo dell'accesso.
Controllare le autorizzazioni IAM per un criterio relativo ai dati
Per vedere quali autorizzazioni hai per un criterio relativo ai dati, chiama il metodo
testIamPermissions
.
Aggiorna i criteri relativi ai dati
L'account utente o di servizio che aggiorna un criterio sui dati deve avere
Autorizzazione bigquery.dataPolicies.update
.
Se stai aggiornando il tag di criteri a cui è associato il criterio dei dati, devi
è necessaria l'autorizzazione datacatalog.taxonomies.get
.
Se stai aggiornando le entità associate al criterio dei dati, devi
è necessaria l'autorizzazione bigquery.dataPolicies.setIamPolicy
.
Le autorizzazioni bigquery.dataPolicies.update
e bigquery.dataPolicies.setIamPolicy
sono incluse nei ruoli Amministratore BigQuery e Proprietario dati BigQuery.
L'autorizzazione datacatalog.taxonomies.get
è inclusa nei ruoli Amministratore di Data Catalog e Visualizzatore di Data Catalog.
Console
- Apri la pagina Tassonomie di tag di criterio nella nella console Google Cloud.
- Fai clic sul nome della tassonomia da aprire.
- Seleziona un tag criterio.
- Fai clic su Gestisci i criteri relativi ai dati.
- Se vuoi, modifica la regola di mascheramento.
- (Facoltativo) Aggiungi o rimuovi entità.
- Fai clic su Invia.
API
Per modificare la regola di mascheramento dei dati, richiama il metodo
patch
e passiamo in un
DataPolicy
risorsa con un campo dataMaskingPolicy
aggiornato.
Per modificare le entità associate a un criterio dei dati, richiama il metodo
setIamPolicy
e passiamo in un
Policy
che si aggiorna
e le entità a cui viene concesso l'accesso ai dati mascherati.
Eliminare i criteri relativi ai dati
L'account utente o di servizio che crea un criterio dei dati deve avere
Autorizzazione bigquery.dataPolicies.delete
. Questa autorizzazione è inclusa nel
Ruoli Amministratore BigQuery e Proprietario dati BigQuery.
Console
- Apri la pagina Tassonomie di tag di criterio nella nella console Google Cloud.
- Fai clic sul nome della tassonomia da aprire.
- Seleziona un tag criterio.
- Fai clic su Gestisci i criteri relativi ai dati.
- Fai clic su accanto al criterio dei dati eliminare.
- Fai clic su Invia.
- Fai clic su Conferma.
API
Per eliminare un criterio dei dati, richiama il metodo
delete
.