Classification des données d’utilisation

Ce chapitre fournit des informations sur la manière de classer les tables d’un schéma, d’examiner les résultats de la classification et de définir les balises système sur les colonnes des tables via SQL ou Snowsight.

Vue d’ensemble

Un gestionnaire de données peut classer les tables d’un schéma afin de respecter les réglementations en matière de confidentialité des données. Ces tables comprennent les scénarios suivants :

  • Nouvelles tables dans un schéma.

  • Nouvelles colonnes ou colonnes modifiées dans une table au sein du même schéma.

  • Tables précédemment classées susceptibles de devoir de nouveau être classées.

L’évaluation de ces scénarios permet au gestionnaire de données de classer les informations sensibles et personnelles. La définition de balises système sur la colonne peut faciliter la surveillance des données. Par la suite, un ingénieur des données peut protéger les données personnelles et sensibles à l’aide d’une politique de masquage ou d’une politique d’accès aux lignes dans Snowsight ou via SQL.

Commencer à classer les données

Avant de classer une seule ou plusieurs tables d’un schéma :

  • Sélectionnez un flux de travail :

  • Décidez de l’entrepôt à utiliser. Par exemple, utilisez un entrepôt qui correspond au centre de coûts ou à l’unité opérationnelle auquel/à laquelle vous appartenez pour permettre un reporting et une budgétisation précis.

  • Tenez compte de la latence dans votre flux de travail. Snowsight met à jour la zone Databases de Snowsight toutes les 12 heures, après quoi les tables mises à jour peuvent être classées.

  • Vérifiez la configuration du contrôle d’accès pour votre rôle actuel :

    • Utilisez une instruction SHOW GRANTS TO ROLE pour voir les droits sur les objets auxquels un utilisateur ayant ce rôle peut accéder. Le rôle utilisé doit au minimum bénéficier les droits suivants :

      • USAGE sur l’entrepôt à utiliser lors du processus de classification.

      • SELECT sur la table pour lancer le processus de classification.

      • Le rôle de base de données SNOWFLAKE.CORE_VIEWER, qui permet de définir les balises système sur les colonnes.

      • Le rôle de base de données SNOWFLAKE.GOVERNANCE_VIEWER pour interroger la vue Account Usage DATA_CLASSIFICATION_LATEST.

    • Pour d’autres combinaisons de droits, voir la référence aux privilèges de la Classification des données.

    • Le modèle de contrôle d’accès permet à différents personas de participer aux flux de travail. Par exemple, un gestionnaire de données peut mettre en zone de préparation la classification des tables dans un schéma, et l’ingénieur des données peut évaluer les résultats dans Snowsight. Sélectionnez le modèle de contrôle d’accès et le flux de travail qui vous conviennent le mieux.

Utilisation de SQL pour classer une seule table

Cette approche utilise SQL pour classer une table et définir des balises système sur les colonnes des tables. Consultez la section Commencer à classer les données pour vous assurer que le rôle utilisé dispose des droits de contrôle d’accès nécessaires pour classer les tables du schéma.

Cette procédure suppose que vous utilisiez un rôle titulaire des droits appropriés. Procédez comme suit pour utiliser SQL afin de classer les tables d’un schéma et de définir des balises système sur les colonnes des tables :

  1. Identifiez une table à classer.

  2. Appelez la procédure stockée SYSTEM$CLASSIFY pour classer et baliser les colonnes de la table :

    CALL SYSTEM$CLASSIFY('hr.tables.empl_info', {'auto_tag': true});
    
    Copy
  3. Appelez la fonction de table Information Schema TAG_REFERENCES_ALL_COLUMNS pour confirmer les affectations de balises sur les colonnes de la table :

    SELECT *
    FROM TABLE(
      hr.INFORMATION_SCHEMA.TAG_REFERENCES_ALL_COLUMNS(
        'hr.tables.empl_info',
        'table'
    ));
    
    Copy
  4. Ensuite, vous pouvez interroger la vue Account Usage DATA_CLASSIFICATION_LATEST pour voir le dernier résultat de la classification de la table.

Répétez ces étapes pour chaque table à classer.

Utilisation de SQL pour classer les tables d’un schéma

Cette approche utilise SQL pour classer toutes les tables d’un schéma et définir des balises système sur les colonnes de chaque table. Pour appliquer cette procédure, vous devez effectuer les opérations suivantes :

  • Cette procédure suppose que vous utilisiez un rôle titulaire des droits appropriés.

  • Sélectionnez un schéma contenant moins de 1 000 objets de table. Vous pouvez utiliser une commande SHOW TABLES IN SCHEMA pour déterminer le nombre d’objets de table dans le schéma.

Procédez comme suit pour utiliser SQL afin de classer toutes les tables d’un schéma et définir des balises système sur chaque colonne de chaque table :

  1. Identifiez un schéma contenant des tables à classer.

  2. Appelez la procédure stockée SYSTEM$CLASSIFY_SCHEMA pour planifier la classification des tables du schéma :

    CALL SYSTEM$CLASSIFY_SCHEMA('hr.tables', {'auto_tag': true});
    
    Copy
  3. Si la sortie contient un message failed pour une ou plusieurs tables, utilisez une commande SNOW GRANTS ON TABLE pour déterminer les droits sur la table spécifiée. Par exemple :

    SHOW GRANTS ON TABLE hr.tables.salary;
    
    Copy
  4. Si nécessaire, accordez des privilèges sur la table non classée au rôle qui appelle la procédure stockée SYSTEM$CLASSIFY_SCHEMA. Sinon, appelez la fonction SYSTEM$GET_CLASSIFICATION_RESULT sur chaque table du schéma :

    SELECT SYSTEM$GET_CLASSIFICATION_RESULT('hr.tables.empl_info');
    
    Copy
  5. Appelez la fonction de table Information Schema TAG_REFERENCES_ALL_COLUMNS pour confirmer les affectations de balises sur les colonnes de la table :

    SELECT *
    FROM TABLE(
      hr.INFORMATION_SCHEMA.TAG_REFERENCES_ALL_COLUMNS(
        'hr.tables.empl_info',
        'table'
    ));
    
    Copy
  6. Ensuite, vous pouvez interroger la vue Account Usage DATA_CLASSIFICATION_LATEST pour voir le dernier résultat de la classification de la table.

Répétez ces étapes pour chaque schéma contenant des tables à classer.

Utilisation de Snowsight pour classer les tables d’un schéma

Cette approche utilise Snowsight pour mettre en zone de préparation la classification des tables d’un schéma et pour baliser automatiquement les colonnes de chaque table du schéma. La procédure suppose que vous utilisiez un rôle titulaire des droits appropriés.

Pour classer toutes les tables d’un schéma et définir des balises système sur chaque colonne de chaque table contenue dans le schéma, procédez comme suit dans Snowsight :

  1. Déclenchez la classification et le balisage des tables du schéma :

    1. Dans Snowsight, utilisez l’explorateur d’objets pour accéder au schéma que vous avez sélectionné.

    2. Sélectionnez le menu More (), puis sélectionnez Classify Data.

    3. Sélectionnez un entrepôt et activez l’option Auto-tagging data.

    4. Sélectionnez Classify Data and Apply Tags.

      Vous pouvez sélectionner cette option pour reclasser une table qui a été classée précédemment.

    Snowsight classe jusqu’à 1 000 tables à la fois. Si votre schéma contient plus de 1 000 tables, commencez par effectuer cette procédure pour le lot de tables initial, puis répétez la procédure pour les tables restantes.

    Vous pouvez également ouvrir une Worksheet et appeler SYSTEM$CLASSIFY_SCHEMA comme indiqué dans Utilisation de SQL pour classer les tables d’un schéma. Si vous sélectionnez cette option, revenez au schéma dans l’explorateur d’objets après avoir appelé cette procédure stockée.

  2. Attendez la fin du processus de classification. Une fois l’opération terminée, une coche verte apparaît dans la colonne CLASSIFICATION.

  3. Sélectionnez View Results.

    Si vous décidez de désactiver l’option Auto-tagging data, sélectionnez Review Classification, évaluez les résultats et déterminez la valeur de balise à définir sur chaque colonne.

    Pour afficher les balises définies sur les colonnes dans l’onglet Column details, utilisez un rôle titulaire de IMPORTED PRIVILEGES sur la base de données SNOWFLAKE.

  4. Évaluez la colonne VALUE TO BE APPLIED, modifiez la valeur de balise, si nécessaire, et sélectionnez Complete classification.

  5. L’onglet Tables affiche Classification results reviewed and applied. Vous pouvez confirmer les affectations de balises en procédant comme suit :

    1. Sélectionnez la table.

    2. Accédez à l’onglet Columns.

    3. Examinez la colonne TAGS.

    Sinon, vous pouvez procéder comme suit :

    1. Utilisez une feuille de calcul pour appeler la fonction de table Information Schema TAG_REFERENCES_ALL_COLUMNS afin d’afficher les affectations de balises d’une colonne d’une table spécifique. Pour les autres options, voir Balises du système de suivi.

    2. Examinez les enregistrements de la vue Account Usage DATA_CLASSIFICATION_LATEST en accédant à la vue à l’aide de l’explorateur d’objets ou en interrogeant la vue dans une feuille de calcul.

  6. Répétez ces étapes pour les autres schémas contenant des tables à classer.