Maschera dati colonna

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 diversi. Per informazioni generali, consulta Introduzione al mascheramento dei dati.

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

  1. Crea una tassonomia con almeno un tag di criteri.
  2. (Facoltativo) Concedi il ruolo di Lettore granulare di Data Catalog a una o più entità su uno o più tag di criteri che hai creato.
  3. Crea fino a tre criteri dei dati per il tag di criteri, al fine di mappare regole e entità di mascheramento (che rappresentano utenti o gruppi) a quel tag.
  4. Imposta il tag di criteri su una colonna. I criteri dei dati associati al tag di criteri vengono mappati alla colonna selezionata.
  5. Assegna gli utenti che devono avere accesso ai dati mascherati al ruolo Lettore mascherato BigQuery. 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 dei dati nell'ambito del progetto, il che può causare problemi causati da un eccesso di autorizzazioni.

Per lavorare con i criteri relativi ai dati, puoi utilizzare la console Google Cloud o l'API BigQuery Data Policy.

Dopo aver completato 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 a cui sono stati concessi. Per maggiori 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. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  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. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  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 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 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 criterio nella console Google Cloud.

    Apri la pagina Tassonomie di 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. Per Descrizione, inserisci una descrizione.
    3. Se necessario, modifica il progetto elencato in Progetto.
    4. Se necessario, modifica la località indicata in Posizione.
    5. In Tag di criteri, inserisci un nome e una descrizione per il tag di criteri.
    6. Per aggiungere un tag di criteri secondario a 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 secondo necessità per la tua tassonomia.
    9. Al termine della creazione dei tag di criterio 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 criterio, ad esempio su come visualizzarli o aggiornarli, consulta Utilizzare i tag di criterio. 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 dei dati deve disporre delle autorizzazioni bigquery.dataPolicies.create, bigquery.dataPolicies.setIamPolicy e datacatalog.taxonomies.get.

Se stai creando un criterio dei dati che fa riferimento a una routine di mascheramento personalizzata, devi anche disporre 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. Uno di questi criteri è riservato alle impostazioni di controllo dell'accesso a livello di colonna.

Console

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

    Apri la pagina Tassonomie di tag di criteri

  2. Fai clic sul nome della tassonomia da aprire.
  3. Seleziona un tag di criteri.
  4. Fai clic su Gestisci criteri relativi ai dati.
  5. In Nome criterio dati, digita un nome per il criterio dei dati. Il nome del criterio dei dati deve essere univoco all'interno del progetto in cui si trova il criterio dei 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 delle 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 di BigQuery.
  8. Fai clic su Invia.

API

  1. Chiama il metodo create. Trasmetti 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 dei dati univoco all'interno del progetto in cui si trova il criterio dei 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 di criteri sulle colonne

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

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

Per visualizzare tassonomie e tag di 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 la console Google Cloud.

  1. Apri la pagina BigQuery nella console Google Cloud.

    Vai alla pagina di BigQuery

  2. In BigQuery Explorer, individua e seleziona la tabella da aggiornare. Si apre lo schema per la tabella in questione.

  3. Fai clic su Modifica schema.

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

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

  6. Fai clic su Seleziona. Dovresti vedere una schermata simile alla seguente:

    Modifica schema.

  7. Fai clic su Salva.

bq

  1. 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.
  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 del 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 trasmetti per impostare un tag di criteri nella definizione dello schema. Per informazioni su come impostare un tag di criteri, consulta lo schema di esempio della riga di comando.

Quando si lavora 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, controllo dell'accesso viene applicato automaticamente. Tutte le colonne a cui è stato 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 dei criteri nella tassonomia. Per maggiori informazioni, consulta Applicare il controllo dell'accesso.

Controlla le autorizzazioni IAM su un criterio dei dati

Per controllare di quali autorizzazioni disponi per un criterio dei dati, chiama il metodo testIamPermissions.

Aggiorna i criteri relativi ai dati

L'account utente o di servizio che aggiorna un criterio dei dati deve avere l'autorizzazione bigquery.dataPolicies.update. Se stai aggiornando il tag di criteri a cui è associato il criterio dei dati, devi disporre anche dell'autorizzazione datacatalog.taxonomies.get.

Se stai aggiornando le entità associate al criterio dei dati, devi disporre dell'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 Data Catalog e Visualizzatore Data Catalog.

Console

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

    Apri la pagina Tassonomie di tag di criteri

  2. Fai clic sul nome della tassonomia da aprire.
  3. Seleziona un tag di criteri.
  4. Fai clic su Gestisci criteri relativi 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 passa una risorsa DataPolicy con un campo dataMaskingPolicy aggiornato.

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

Elimina criteri relativi ai dati

L'account utente o di servizio che crea un criterio dei 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 criterio nella console Google Cloud.

    Apri la pagina Tassonomie di tag di criteri

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

API

Per eliminare un criterio dei dati, chiama il metodo delete.