Maschera dati colonna

Questo documento mostra come implementare il mascheramento dei dati al fine di oscurare selettivamente i dati sensibili. Con l'implementazione del mascheramento dei dati, puoi fornire diversi livelli di visibilità a diversi gruppi di utenti. Per informazioni generali, consulta Introduzione al mascheramento dei dati.

Puoi implementare il mascheramento dei dati aggiungendo un criterio sui dati a una colonna. Per aggiungere un criterio di mascheramento dei dati a una colonna, devi completare i seguenti passaggi :

  1. Crea una tassonomia con almeno un tag di criteri.
  2. (Facoltativo) Concedi il ruolo Lettore granulare Data Catalog a una o più entità in uno o più tag di criteri che hai creato.
  3. Crea fino a tre criteri relativi ai dati per il tag di criteri al fine di mappare le regole e le entità di mascheramento (che rappresentano utenti o gruppi) a quel tag.
  4. Imposta il tag di criteri su una colonna. In questo modo, i criteri relativi ai dati associati al tag di criteri vengono mappati alla colonna selezionata.
  5. Assegna il ruolo Lettore mascherato BigQuery agli utenti che devono avere accesso ai dati mascherati. Come best practice, assegna il ruolo Lettore mascherato BigQuery a livello di criterio 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 causati da autorizzazioni in eccesso.

Puoi utilizzare la console Google Cloud o l'API BigQuery Data Policy per lavorare con i criteri sui 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 loro assegnati. Per ulteriori informazioni, consulta Come interagiscono i ruoli Lettore mascherato e Lettore granulare.

Prima di iniziare

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  3. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  4. Abilita le API Data Catalog and BigQuery Data Policy.

    Abilita le API

  5. Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  6. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  7. Abilita le API Data Catalog and BigQuery Data Policy.

    Abilita le API

  8. BigQuery viene abilitato automaticamente nei nuovi progetti, ma potrebbe essere necessario attivarlo in un progetto preesistente.

    Attiva l'API BigQuery.

    Abilita l'API

  9. Se stai creando un criterio relativo ai dati che fa riferimento a una routine di mascheramento personalizzata, crea la funzione definita dall'utente di mascheramento associata in modo che sia disponibile nei passaggi seguenti.

Creazione tassonomie

All'account utente o di servizio che crea una tassonomia deve essere concesso il ruolo Amministratore tag di criteri di Data Catalog.

Console

  1. Apri la pagina Tassonomie di tag di criteri nella console Google Cloud.

    Apri la pagina Tassonomie tag di criteri

  2. Fai clic su Crea tassonomia.
  3. Nella pagina Nuova tassonomia:

    1. In Nome tassonomia, inserisci il nome della tassonomia che vuoi creare.
    2. In Descrizione, inserisci una descrizione.
    3. Se necessario, modifica il progetto elencato in Progetto.
    4. Se necessario, cambia la località indicata sotto Località.
    5. In Tag di criteri, inserisci un nome e una descrizione per il tag di criteri.
    6. Per aggiungere un tag di criterio secondario per un tag di criteri, fai clic su Aggiungi sottotag.
    7. Per aggiungere un nuovo tag di criteri allo stesso livello di un altro tag di criteri, fai clic su + Aggiungi tag di criteri.
    8. Continua ad aggiungere tag di criteri e tag di criteri figlio in base alle esigenze della tua tassonomia.
    9. Al termine della creazione dei tag di criteri per la gerarchia, fai clic su Crea.

API

Per utilizzare le tassonomie esistenti, chiama taxonomies.import al posto dei primi due passaggi della procedura seguente.

  1. Chiama taxonomies.create per creare una tassonomia.
  2. 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 su come visualizzarli o aggiornarli, consulta Utilizzare i tag di criteri. Per le best practice, consulta 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 avere le autorizzazioni bigquery.dataPolicies.create, bigquery.dataPolicies.setIamPolicy e datacatalog.taxonomies.get.

Se stai creando un criterio relativo ai dati che fa riferimento a una routine di mascheramento personalizzata, devi avere anche le autorizzazioni di routine.

Queste autorizzazioni sono incluse nei ruoli Amministratore BigQuery e Proprietario dati BigQuery.

Puoi creare fino a nove criteri di dati per un tag di criteri. Uno di questi criteri è riservato per le impostazioni di controllo dell'accesso a livello di colonna.

Console

  1. Apri la pagina Tassonomie di tag di criteri nella console Google Cloud.

    Apri la pagina Tassonomie tag di criteri

  2. Fai clic sul nome della tassonomia da aprire.
  3. Seleziona un tag di criteri.
  4. Fai clic su Gestisci norme relative ai dati.
  5. In Nome criterio dati, digita un nome per il criterio sui dati. Il nome del criterio relativo ai dati deve essere univoco all'interno del progetto in cui si trova il criterio sui dati.
  6. Per Regola di mascheramento, scegli una regola di mascheramento predefinita o una routine di mascheramento personalizzata. Se selezioni una routine di mascheramento personalizzata, assicurati di disporre di entrambe le autorizzazioni bigquery.routines.get e bigquery.routines.list a livello di progetto.
  7. In Entità, 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 i gruppi che inserisci qui viene concesso il ruolo Lettore mascherato BigQuery.
  8. Fai clic su Invia.

API

  1. Chiama il metodo create. Passa una risorsa DataPolicy che soddisfi i seguenti requisiti:

    • Il campo dataPolicyType è impostato su DATA_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 sui dati univoco all'interno del progetto in cui si trova il criterio sui dati.
  2. Chiama il metodo setIamPolicy e trasmetti un Policy. Policy deve identificare le entità a cui viene concesso l'accesso ai dati mascherati e specificare roles/bigquerydatapolicy.maskedReader per il campo role.

Imposta tag criterio sulle colonne

Imposta un criterio relativo ai dati su una colonna collegando alla colonna il tag di criteri associato al criterio relativo ai dati.

L'account utente o di servizio che imposta un tag di criteri deve avere le autorizzazioni datacatalog.taxonomies.get e bigquery.tables.setCategory. datacatalog.taxonomies.get è incluso nei ruoli Amministratore tag criterio di Data Catalog e Visualizzatore progetto. bigquery.tables.setCategory è incluso nei ruoli Amministratore BigQuery (roles/bigquery.admin) e Proprietario dati BigQuery (roles/bigquery.dataOwner).

Console

Imposta il tag di criteri modificando uno schema utilizzando la console Google Cloud.

  1. Apri la pagina BigQuery nella console Google Cloud.

    Vai alla pagina BigQuery

  2. In BigQuery Explorer, individua e seleziona la tabella che vuoi aggiornare. Si apre lo schema della tabella in questione.

  3. Fai clic su Modifica schema.

  4. Nella schermata Schema corrente, seleziona la colonna di destinazione e fai clic su Aggiungi tag criterio.

  5. Nella schermata Aggiungi un tag di criteri, individua e seleziona il tag di criterio che vuoi applicare alla colonna.

  6. Fai clic su Seleziona. La schermata dovrebbe essere simile alla seguente:

    Modifica schema.

  7. Fai clic su Salva.

bq

  1. Scrivere 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 contenente la tabella che stai aggiornando.
    • table è il nome della tabella che stai aggiornando.
  2. Modifica schema.json per impostare un tag di criteri su una colonna. Per il valore del campo names di policyTags, utilizza il nome della risorsa tag di criteri.

    [
     ...
     {
       "name": "ssn",
       "type": "STRING",
       "mode": "REQUIRED",
       "policyTags": {
         "names": ["projects/project-id/locations/location/taxonomies/taxonomy-id/policyTags/policytag-id"]
       }
     },
     ...
    ]
    
  3. Aggiorna lo schema.

    bq update \
       project-id:dataset.table schema.json
    

API

Per le tabelle esistenti, chiama tables.patch o, per le nuove tabelle, chiama tables.insert. Utilizza la proprietà schema dell'oggetto Table che passi per impostare un tag di criteri nella definizione dello schema. Consulta lo schema di 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 relativo ai dati per un tag di criteri, controllo dell'accesso viene applicato automaticamente. Tutte le colonne in 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 relativi ai dati associati ai tag di criteri nella tassonomia. Per maggiori informazioni, consulta Applicare il controllo dell'accesso.

Controlla le autorizzazioni IAM su un criterio di dati

Per vedere di quali autorizzazioni disponi 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 relativo ai dati deve avere l'autorizzazione bigquery.dataPolicies.update. Se aggiorni il tag di criteri a cui è associato il criterio relativo ai dati, devi disporre anche dell'autorizzazione datacatalog.taxonomies.get.

Se stai aggiornando le entità associate al criterio dei dati, devi richiedere l'autorizzazione bigquery.dataPolicies.setIamPolicy.

Le autorizzazioni bigquery.dataPolicies.update e bigquery.dataPolicies.setIamPolicy sono incluse nei ruoli Amministratore di BigQuery e Proprietario dati BigQuery. L'autorizzazione datacatalog.taxonomies.get è inclusa nei ruoli Amministratore Data Catalog e Visualizzatore Data Catalog.

Console

  1. Apri la pagina Tassonomie di tag di criteri nella console Google Cloud.

    Apri la pagina Tassonomie tag di criteri

  2. Fai clic sul nome della tassonomia da aprire.
  3. Seleziona un tag di criteri.
  4. Fai clic su Gestisci norme relative ai dati.
  5. Se vuoi, modifica la regola di mascheramento.
  6. (Facoltativo) Aggiungi o rimuovi entità.
  7. Fai clic su Invia.

API

Per modificare la regola di mascheramento dei dati, chiama il metodo patch e trasmetti una risorsa DataPolicy con un campo dataMaskingPolicy aggiornato.

Per modificare le entità associate a un criterio di dati, chiama il metodo setIamPolicy e trasmetti un Policy che aggiorna le entità a cui è concesso l'accesso ai dati mascherati.

Elimina criteri relativi ai dati

L'account utente o di servizio che crea un criterio relativo ai dati deve avere l'autorizzazione bigquery.dataPolicies.delete. Questa autorizzazione è inclusa nei ruoli Amministratore BigQuery e Proprietario dati BigQuery.

Console

  1. Apri la pagina Tassonomie di tag di criteri nella console Google Cloud.

    Apri la pagina Tassonomie tag di criteri

  2. Fai clic sul nome della tassonomia da aprire.
  3. Seleziona un tag di criteri.
  4. Fai clic su Gestisci norme relative ai dati.
  5. Fai clic su accanto al criterio relativo ai dati da eliminare.
  6. Fai clic su Invia.
  7. Fai clic su Conferma.

API

Per eliminare un criterio relativo ai dati, chiama il metodo delete.