Classification des données sensibles¶
Cette rubrique fournit des informations sur le fonctionnement de la classification des données sensibles.
Pour plus d’informations sur l’utilisation des classificateurs personnalisés, voir Classification personnalisée des données sensibles.
Vue d’ensemble¶
La classification des données sensibles est un processus en plusieurs étapes qui associe des balises système définies par Snowflake à des colonnes en analysant les champs et les métadonnées des données personnelles ; ces données peuvent être suivies par un ingénieur des données à l’aide des sites SQL et l”Snowsight. Un ingénieur des données peut classer les colonnes d’une table afin de déterminer si la colonne contient certains types de données qui doivent être suivies ou protégées, comme un identificateur unique (données de passeport ou de compte bancaire), un quasi-identificateur (la ville dans laquelle vit la personne) ou une valeur sensible (le salaire d’une personne).
En suivant les données à l’aide d’une balise système et en protégeant les données à l’aide d’une politique de masquage ou d’accès aux lignes, l’ingénieur des données peut améliorer la posture de gouvernance associée aux données. Le résultat global des étapes de classification et de protection des données est de faciliter la conformité aux réglementations sur la confidentialité des données.
Vous pouvez classer une seule ou plusieurs tables d’un schéma. Snowflake fournit des balises système prédéfinies pour vous permettre de classer et de baliser les colonnes, ou vous pouvez utiliser des classificateurs personnalisés pour définir votre propre catégorie sémantique en fonction de votre connaissance de vos données. Vous pouvez également opter pour une approche qui utilise les balises système Snowflake et des classificateurs personnalisés en fonction de la posture de gouvernance que vous souhaitez adopter.
La classification offre les avantages suivants aux administrateurs de la confidentialité des données et de la gouvernance des données :
- Accès aux données:
Les résultats de la classification des données des colonnes peuvent aider les administrateurs de la gestion des identités et des accès à évaluer et à maintenir leurs hiérarchies de rôles Snowflake pour s’assurer que les rôles Snowflake ont l’accès approprié aux données sensibles ou PII.
- Partage de données:
Le processus de classification peut aider à identifier et à confirmer l’emplacement de stockage des données PII. Ensuite, un fournisseur de partage de données peut utiliser les résultats de la classification pour déterminer s’il doit partager des données et comment mettre les données PII à la disposition d’un consommateur de partage de données.
- Application de la politique:
L’utilisation de colonnes contenant des données PII, comme la référence à des colonnes dans des tables de base pour créer une vue ou une vue matérialisée, peut aider à déterminer la meilleure approche pour protéger les données avec une politique de masquage ou une politique d’accès aux lignes.
Objets et types de données pris en charge¶
Snowflake prend en charge la classification des données stockées dans tous les types de tables et de vues, notamment les tables externes, les vues matérialisées et les vues sécurisées.
Notez que Snowflake ne prend pas en charge la classification sur les tables partagées et les schémas partagés du côté du consommateur. Si une table est créée par le fournisseur et placée dans le partage sortant du fournisseur, la classification ne fonctionnera que si elle est appelée du côté du fournisseur.
Vous pouvez classer les colonnes des tables et des vues pour tous les types de données pris en charge , à l’exception des types de données suivants :
ARRAY
BINARY
GEOGRAPHY
OBJECT
VARIANT
Notez que vous pouvez classer une colonne avec le type de données VARIANT lorsque le type de données de la colonne peut être converti vers un type de données NUMBER ou STRING. Snowflake ne classe pas la colonne si celle-ci contient JSON, XML ou d’autres données semi-structurées.
VECTOR
Si une table contient des colonnes dont le type de données n’est pas pris en charge ou si la colonne contient toutes les valeurs NULL, le processus de classification ignore les colonnes et ne les inclut pas dans la sortie.
Important
Si vos données représentent des valeurs NULL avec une valeur autre que NULL, la précision des résultats de la classification peut être affectée.
Recommandations¶
Pour tirer parti de la fonction Classification et optimiser vos capacités de suivi des données PII, procédez comme suit :
- Validation:
Interrogez d’abord les vues Account Usage :
ACCESS_HISTORY: déterminer les objets de table et de vue auxquels on accède le plus fréquemment.
OBJECT_DEPENDENCIES: déterminer les références de métadonnées entre deux ou plusieurs objets.
Utilisez les résultats de la requête pour donner la priorité à l’affectation des balises du système de classification au niveau du schéma ou de la base de données.
- Noms de colonne:
Utilisez des noms de colonne sensés dans vos objets de table et formez les créateurs de table à respecter les directives internes de création de table.
- Types de données:
Utilisez des types de données sensés pour les colonnes. Par exemple, une colonne AGE doit avoir le type de données NUMBER.
- VARIANT:
Si une colonne a un type de données VARIANT, utilisez la commande FLATTEN sur la colonne avant de classer la table.
Classer les tables et les schémas¶
Après avoir défini les classificateurs personnalisés que vous souhaitez utiliser, vous pouvez classer vos données sensibles. Vous pouvez utiliser les approches suivantes :
Classer manuellement une table spécifique. Vous pouvez lancer le processus de classification en utilisant Snowsight ou en exécutant une commande SQL.
Définissez un profil de classification pour un schéma afin que les tables du schéma soient classées automatiquement.
Gérer la classification des données sensibles¶
Référence aux privilèges¶
Le modèle de privilège de la Classification des données permet à l’administrateur de la confidentialité des données de déterminer quels personas peuvent classer les tables et baliser les colonnes. Par exemple, un seul rôle peut disposer de tous les privilèges nécessaires, ou l’administrateur de la confidentialité des données peut déléguer les droits à différents rôles afin de remplir les conditions de séparation des tâches (SoD). Un exemple de combinaison de droits valide est présenté à la section Commencer à classer les données de Classer manuellement les données sensibles.
En tant qu’administrateur, vous disposez de différentes options suivant la manière dont vous souhaitez gérer les rôles ou les personas concernés. Les options offrent une certaine flexibilité quant à la posture de gouvernance que vous souhaitez adopter. Par exemple :
Le propriétaire de la table (le rôle disposant du privilège OWNERSHIP sur la table) peut classer la table et définir des balises système sur les colonnes.
Un rôle personnalisé disposant du privilège SELECT sur la table et du privilège APPLY TAG sur le compte peut classer la table et définir des balises système sur les colonnes.
Si vous souhaitez que différents rôles ou personas soient impliqués dans la classification et le balisage des colonnes, vous pouvez accorder le privilège SELECT sur la table à un rôle et le privilège APPLY TAG sur le compte à un autre rôle.
Le tableau suivant résume les différentes options de droit pour classer une table, définir les balises système de la Classification des données sur les colonnes et effectuer ces deux tâches :
Privilège ou rôle |
Classer une ou des tables |
Définir des balises système sur des colonnes |
---|---|---|
SELECT sur la table ou la vue. |
✔ |
|
OWNERSHIP sur la table. |
✔ |
✔ |
APPLY TAG sur le compte. |
✔ |
|
Rôle ACCOUNTADMIN. |
✔ |
|
OWNERSHIP sur la base de données ou le schéma. |
Important
La classification des tables nécessite un entrepôt en cours d’exécution. Le rôle utilisé pour classer une table doit au minimum disposer du privilège USAGE sur un entrepôt.
Vous pouvez accorder le rôle de base de données SNOWFLAKE.GOVERNANCE_VIEWER à un rôle de compte pour permettre aux utilisateurs titulaires de ce rôle de compte d’interroger la vue DATA_CLASSIFICATION_LATEST pour voir les résultats les plus récents d’une table classée.