En aquest tema, explorarem com BigQuery maneja el xifrat de dades per garantir la seguretat i la privacitat de la informació emmagatzemada. Aprendrem sobre els diferents tipus de xifrat disponibles, com configurar-los i les millors pràctiques per assegurar les dades.

Continguts

Introducció al xifrat de dades

El xifrat de dades és un procés que converteix la informació en un format il·legible per a qualsevol persona que no tingui la clau de desxifrat. Això és crucial per protegir la informació sensible i complir amb les normatives de seguretat.

Per què és important el xifrat de dades?

  • Protecció de dades sensibles: Assegura que només les persones autoritzades puguin accedir a la informació.
  • Compliment normatiu: Moltes regulacions, com el GDPR, requereixen el xifrat de dades per protegir la privacitat dels usuaris.
  • Seguretat en cas de violació: Si les dades són robades, el xifrat impedeix que els atacants puguin llegir la informació.

Tipus de xifrat a BigQuery

BigQuery ofereix diversos tipus de xifrat per protegir les dades:

  1. Xifrat per defecte (DEK - Data Encryption Key):

    • BigQuery xifra automàticament totes les dades en repòs utilitzant claus de xifrat gestionades per Google.
    • Aquest xifrat és transparent per als usuaris i no requereix cap configuració addicional.
  2. Xifrat gestionat pel client (CMEK - Customer-Managed Encryption Keys):

    • Permet als usuaris utilitzar les seves pròpies claus de xifrat gestionades a través de Google Cloud Key Management Service (KMS).
    • Proporciona un control addicional sobre les claus de xifrat i permet la rotació i revocació de claus.

Taula comparativa dels tipus de xifrat

Tipus de xifrat Gestió de claus Configuració necessària Casos d'ús
DEK Google Cap Xifrat per defecte per a la majoria d'usuaris
CMEK Client Configuració de KMS Requisits de seguretat avançats, compliment normatiu estricte

Configuració del xifrat de dades

Configuració de CMEK a BigQuery

Per utilitzar CMEK a BigQuery, segueix aquests passos:

  1. Crear una clau de xifrat a Google Cloud KMS:

    gcloud kms keys create my-key --location=global --keyring=my-keyring --purpose=encryption
    
  2. Assignar permisos a BigQuery per utilitzar la clau:

    gcloud kms keys add-iam-policy-binding my-key --location=global --keyring=my-keyring --member=serviceAccount:[email protected] --role=roles/cloudkms.cryptoKeyEncrypterDecrypter
    
  3. Configurar BigQuery per utilitzar la clau CMEK:

    CREATE TABLE my_dataset.my_table
    OPTIONS (
      kms_key_name="projects/my-project/locations/global/keyRings/my-keyring/cryptoKeys/my-key"
    );
    

Exemple pràctic

-- Crear una taula amb CMEK
CREATE TABLE my_dataset.secure_table
OPTIONS (
  kms_key_name="projects/my-project/locations/global/keyRings/my-keyring/cryptoKeys/my-key"
) AS
SELECT
  id,
  sensitive_data
FROM
  my_dataset.source_table;

Millors pràctiques per al xifrat de dades

  • Utilitza CMEK per a dades sensibles: Si treballes amb informació altament confidencial, utilitza CMEK per tenir un control addicional sobre les claus de xifrat.
  • Rotació regular de claus: Implementa una política de rotació de claus per minimitzar el risc en cas que una clau sigui compromesa.
  • Monitoratge i auditoria: Utilitza les eines de monitoratge i auditoria de Google Cloud per supervisar l'ús de les claus de xifrat i detectar activitats sospitoses.

Exercicis pràctics

Exercici 1: Crear una taula amb CMEK

  1. Crea una clau de xifrat a Google Cloud KMS.
  2. Assigna els permisos necessaris a BigQuery.
  3. Crea una taula a BigQuery utilitzant la clau CMEK.

Solució

  1. Crear la clau de xifrat:

    gcloud kms keys create my-key --location=global --keyring=my-keyring --purpose=encryption
    
  2. Assignar permisos:

    gcloud kms keys add-iam-policy-binding my-key --location=global --keyring=my-keyring --member=serviceAccount:[email protected] --role=roles/cloudkms.cryptoKeyEncrypterDecrypter
    
  3. Crear la taula:

    CREATE TABLE my_dataset.secure_table
    OPTIONS (
      kms_key_name="projects/my-project/locations/global/keyRings/my-keyring/cryptoKeys/my-key"
    ) AS
    SELECT
      id,
      sensitive_data
    FROM
      my_dataset.source_table;
    

Conclusió

En aquest tema, hem après sobre la importància del xifrat de dades, els diferents tipus de xifrat disponibles a BigQuery i com configurar-los. També hem vist algunes millors pràctiques per assegurar les dades i hem realitzat un exercici pràctic per reforçar els conceptes apresos. Amb aquesta base, estàs preparat per protegir les teves dades a BigQuery de manera efectiva.

Curs de BigQuery

Mòdul 1: Introducció a BigQuery

Mòdul 2: SQL bàsic a BigQuery

Mòdul 3: SQL intermedi a BigQuery

Mòdul 4: SQL avançat a BigQuery

Mòdul 5: Gestió de dades a BigQuery

Mòdul 6: Optimització del rendiment de BigQuery

Mòdul 7: Seguretat i compliment de BigQuery

Mòdul 8: Integració i automatització de BigQuery

Mòdul 9: Aprenentatge automàtic a BigQuery (BQML)

Mòdul 10: Casos d'ús de BigQuery en el món real

© Copyright 2024. Tots els drets reservats