<< Back

Governance dei dati in Snowflake: Best Practices

Ciao a tutti e ben ritrovati nella nostra rubrica dedicata a Snowflake! 🙂

Continuiamo con la panoramica sul Summit Annuale di Snowflake che si è tenuto lo scorso giugno. Alcuni dei nostri consulenti vi hanno partecipato e ci hanno raccontato che cosa è successo.

Oggi parleremo di governance dei dati: alcune best practices per ottimizzarla usando Snowflake!

Cos’è la governance dei dati?

Per governance dei dati si intende la gestione di un’organizzazione in merito alla disponibilità, usabilità, coerenza, integrità e sicurezza dei propri dati. In altre parole, la governance dei dati definisce chi può intraprendere quale azione, su quali dati, in quali situazioni, utilizzando quali metodi. Include, quindi, i processi, i ruoli, le policies, gli standards e le metriche per garantire un’efficace gestione dei dati durante il loro intero ciclo di vita e per il loro utilizzo da parte dell’intera organizzazione.

Ogni organizzazione dovrebbe avere una forma di governance dei dati per evitare che informazioni sensibili finiscano nelle mani sbagliate. In particolare, se l’azienda è grande o opera in un settore soggetto a normative come quello sanitario o bancario, la governance dei dati è fondamentale.

La governance in Snowflake consiste nell’aiutare i clienti a sapere dove si trovano i dati sensibili e chi vi ha accesso, a proteggere i dati sensibili da accessi non autorizzati e ad aiutare a sbloccare il valore dei dati.

A questo proposito, vediamo in dettaglio alcune delle best practices fornite da Snowflake.

1. Conoscere i propri dati

I progetti di governance dei dati di successo richiedono la gestione del cambiamento all’interno dell’organizzazione. All’inizio è necessario fare piccoli passi per aiutare le parti interessate a sentirsi più a proprio agio con i cambiamenti e anche a testare i processi e le comunicazioni interne.

È utile identificare tutti i domini di dati dell’azienda e iniziare a pensare ai punti di controllo dei dati sistemici. Questo è un grande passo: significa iniziare a comprendere, classificare e tenere traccia dei dati e del loro utilizzo.

2. Proteggere i propri dati

Un’altra best practice è quella di proteggere i dati sensibili con controlli di accesso basati su diversi criteri.

Snowflake offre due tipi diversi di protezione:

  • Column-Level Security, che comprende due opzioni:
    1. Dynamic Data Masking (vedi sotto).
    2. External Tokenization: permette di codificare dati sensibili prima di caricarli su Snowflake e decodificarli al momento di esecuzione della query in base alle masking policies stabilite, grazie all’utilizzo di External Functions.
  • Row Access Policies (vedi sotto).

Vediamo in dettaglio:

Dynamic Data Masking

dynamic-data-masking
Esempio di dati parzialmente mascherati all’interno di una colonna.

È un tipo di protezione a livello di colonne all’interno di una tabella o di una view.

Rende più facile e gestibile la protezione dei dati sensibili in quattro passaggi:

  • Definire un criterio di Data Masking: cioè determinare quali utenti possono accedere a quali dati (mascherati, non mascherati o parzialmente mascherati). Può essere un criterio di mascheramento semplice o più sofisticato.
  • Associare il criterio a una o più colonne: dopo aver definito la policy da usare, bisogna indicare a quali colonne va applicata (una o più colonne contemporaneamente).
  • Applicazione: questo livello di security viene dinamicamente applicato al set di risultati di una query quando viene eseguita e restituisce dati mascherati e non mascherati in base all’utente.
  • Controllo: è buona pratica fare sempre una verifica, per garantire che tutti i dati sensibili siano adeguatamente protetti.
policy-based-on-username
Esempio di criterio definito in base all’username.

Row Access Policies

row-access-policies

Questo tipo di policy richiede almeno la Enterprise Edition di Snowflake.

È un tipo di protezione a livello di riga: si può filtrare il contenuto delle righe di una tabella a seconda dell’utente.

Similmente al Dynamic Data Masking, si possono seguire i seguenti quattro passaggi:

  • Definire un criterio di accesso alla riga: quando si definiscono dei criteri, determinare quali utenti possono accedere a quali righe (ad esempio, utenti in specifiche aree geografiche). Si può anche utilizzare una entitlement table, per determinare gli accessi in uno scenario più articolato (vedi figura).
  • Associare un criterio alla tabella: dopo aver definito la policy, determinare quali tabelle, views o tabelle esterne si desidera associare.
  • Applicazione: Snowflake applica dinamicamente il criterio ogni volta che l’utente accede alla tabella per filtrare le righe di dati che non è autorizzato a visualizzare.
  • Verifica: per controllare che i dati siano protetti con un criterio appropriato, eseguire regolarmente un controllo.
filter-row-entitlement-table
Esempio di un criterio basato su ruolo e regione, usando una entitlement table.

In generale, tutti le policies (sia a livello di colonna che di riga) possono essere basate su username, su ruolo corrente, sui ruoli attivi nella sessione, o su una entitlement table.

3. Sbloccare i propri dati

La piattaforma di dati cloud Snowflake fornisce gli strumenti e tutto il supporto per rendere sicura la condivisione dei dati. La condivisione sicura è uno strumento potente che consente di collaborare e condividere i dati tra diversi team.

Per ulteriori informazioni, vi consigliamo di dare un’occhiata alla relativa documentazione.

Per concludere è opportuno osservare che, man mano che i dati di un’azienda crescono, è necessario continuare a stabilire regole e procedure intorno alla sua governance. Insomma, la governance dei dati è un impegno organizzativo continuo che deve crescere e adattarsi alle nuove sfide di conformità, business e sicurezza. La creazione di un team permanente di governance dei dati e di una struttura per affrontare queste sfide aiuterà a garantire il futuro successo dell’intera organizzazione.

Per ulteriori domande su Snowflake vi invitiamo a contattarci all’indirizzo: info@theinformationlab.it

Speriamo che questo articolo vi abbia incuriosito e che continuiate a seguire il nostro blog.

Vi diamo appuntamento alla settimana prossima con alcune best practices per l’utilizzo di Snowflake!

Alla prossima! ❄️

governance-dei-dati

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.