Sécuriser votre lac

Le modèle de sécurité Dataplex vous permet de gérer qui a accès aux tâches suivantes:

  • Administrer un lac (créer et associer des éléments, des zones et des lacs supplémentaires)
  • Accès aux données connectées à un lac via l'élément de mappage (ressources Google Cloud telles que les buckets Cloud Storage et les ensembles de données BigQuery)
  • Accéder aux métadonnées sur les données connectées à un lac

Un administrateur d'un lac contrôle l'accès aux ressources Dataplex (lac, zone et éléments) en attribuant les rôles de base et prédéfinis suivants.

Rôles de base

Rôle Description
Lecteur Dataplex
(roles/dataplex.viewer)
Possibilité d'afficher (mais pas de modifier) le lac, ainsi que ses zones et éléments configurés.
Éditeur Dataplex
(roles/dataplex.editor)
Rôle permettant de modifier le lac. Peut créer et configurer des lacs, des zones, des éléments et des tâches.
Administrateur Dataplex
(roles/dataplex.administrator)
Capacité à administrer entièrement un lac.
Développeur Dataplex
(roles/dataplex.developer)
Vous êtes capable d'exécuter des charges de travail d'analyse de données sur un lac. *
* Pour interroger une table BigQuery, vous devez être autorisé à exécuter un job BigQuery. Définissez cette autorisation dans le projet auquel vous souhaitez attribuer ou facturer les dépenses de calcul associées à la tâche. Pour en savoir plus, consultez Rôles et autorisations BigQuery prédéfinis.
Pour exécuter un job Spark, créez des clusters Dataproc et envoyez les tâches Dataproc dans le projet auquel vous souhaitez attribuer les ressources de calcul.

Rôles prédéfinis

Google Cloud gère les rôles suivants, qui fournissent un accès précis à Dataplex.

Rôles associés aux métadonnées

Les rôles de métadonnées peuvent afficher des métadonnées, telles que des schémas de table.

Rôle Description
Rédacteur de métadonnées Dataplex
(roles/dataplex.metadataWriter)
Possibilité de mettre à jour les métadonnées d'une ressource donnée.
Lecteur de métadonnées Dataplex
(roles/dataplex.metadataReader)
Possibilité de lire les métadonnées (par exemple, pour interroger une table).

Rôles associés aux données

L'attribution de rôles de données à un compte principal lui permet de lire ou d'écrire des données dans les ressources sous-jacentes vers lesquelles les éléments du lac font référence.

Dataplex mappe ses rôles aux rôles d'accès aux données pour chaque ressource de stockage sous-jacente (Cloud Storage, BigQuery).

Dataplex traduit et propage les rôles de données Dataplex vers la ressource de stockage sous-jacente, en définissant les rôles appropriés pour chaque ressource de stockage. L'avantage est que vous pouvez attribuer un seul rôle de données Dataplex au niveau de la hiérarchie des lacs (par exemple, un lac). Dataplex conserve l'accès spécifié aux données sur toutes les ressources connectées à ce lac (par exemple, les buckets Cloud Storage et les ensembles de données BigQuery sont référencés par les éléments des zones sous-jacentes).

Par exemple, si vous attribuez le rôle dataplex.dataWriter à un compte principal pour un lac, vous lui accordez un accès en écriture à toutes les données du lac, ainsi qu'à ses zones et éléments sous-jacents. Les rôles d'accès aux données attribués à un niveau inférieur (zone) sont hérités dans la hiérarchie des lacs pour les éléments sous-jacents.

Rôle Description
Lecteur de données Dataplex
(roles/dataplex.dataReader)
Rôle permettant de lire les données de l'espace de stockage associé à des éléments, y compris les buckets de stockage et les ensembles de données BigQuery (et leur contenu). *
Rédacteur de données Dataplex
(roles/dataplex.dataWriter)
Possibilité d'écrire dans les ressources sous-jacentes référencées par l'élément. *
Propriétaire de données Dataplex
(roles/dataplex.dataOwner)
Accorde le rôle de propriétaire aux ressources sous-jacentes, avec la possibilité de gérer les ressources enfants. Par exemple, en tant que propriétaire de données d'un ensemble de données BigQuery, vous pouvez gérer les tables sous-jacentes.

Sécuriser votre lac

Vous pouvez sécuriser et gérer l'accès à votre lac et aux données qui lui sont associées. Dans la console Google Cloud, utilisez l'une des vues suivantes:

  • La vue Gérer de Dataplex, sous l'onglet Autorisations, ou
  • Vue sécurisée de Dataplex

Utiliser la vue Gérer

L'onglet Autorisations vous permet de gérer toutes les autorisations sur une ressource de lac et présente une vue non filtrée de toutes les autorisations, y compris celles héritées.

Pour sécuriser votre lac, procédez comme suit:

  1. Accédez à Dataplex dans la console Google Cloud.

    Accéder à Dataplex

  2. Accédez à la vue Gérer.

  3. Cliquez sur le nom du lac que vous avez créé.

  4. Cliquez sur l'onglet Autorisations.

  5. Cliquez sur l'onglet Afficher par rôle.

  6. Cliquez sur Ajouter pour ajouter un rôle. Ajoutez les rôles Lecteur de données Dataplex, Rédacteur de données et Propriétaire de données.

  7. Vérifiez que les rôles Lecteur de données Dataplex, Rédacteur de données et Propriétaire de données s'affichent.

Utiliser l'affichage sécurisé

La vue sécurisée de Dataplex dans la console Google Cloud offre les éléments suivants:

  • Vue simple et filtrable des rôles Dataplex centrés sur une ressource spécifique.
  • Séparez les rôles liés aux données des rôles aux ressources de lac.
Exemple d'autorisations d'accès aux données qui ne sont pas héritées des ressources de lac supérieures
Figure 1: Dans cet exemple de lac, les deux comptes principaux disposent d'autorisations d'accès aux données sur l'élément appelé données Cloud Storage (données GCS). Ces autorisations ne sont pas héritées des ressources de lac supérieures.


Exemple d'autorisations qui ne sont pas héritées des ressources de lac supérieures
Figure 2: Cet exemple montre:
  1. Un compte de service qui hérite du rôle Administrateur Dataplex du projet.
  2. Comptes principaux (adresse e-mail) qui héritent des rôles d'éditeur et de lecteur Dataplex du projet. Il s'agit des rôles qui s'appliquent à toutes les ressources.
  3. Un compte principal (adresse e-mail) qui hérite du rôle Administrateur Dataplex du projet.

Gestion des règles

Une fois que vous avez spécifié votre stratégie de sécurité, Dataplex propage les autorisations vers les stratégies IAM des ressources gérées.

La stratégie de sécurité configurée au niveau du lac est propagée à toutes les ressources gérées dans ce lac. Dataplex fournit l'état de propagation et la visibilité sur ces propagations à grande échelle dans l'onglet Gérer > Autorisations de Dataplex. Il surveille en permanence les ressources gérées pour détecter toute modification de la stratégie IAM en dehors de Dataplex.

Les utilisateurs qui disposent déjà d'autorisations sur une ressource les conservent même après l'association de cette ressource à un lac Dataplex. De même, les liaisons de rôles non Dataplex créées ou mises à jour après l'association de la ressource à Dataplex restent identiques.

Définir des règles au niveau des colonnes, des lignes et des tables

Les éléments de bucket Cloud Storage sont associés à des tables externes BigQuery.

Vous pouvez mettre à niveau un élément de bucket Cloud Storage. Dataplex supprime alors les tables externes associées et associe les tables BigLake à la place.

Vous pouvez utiliser des tables BigLake au lieu de tables externes pour un contrôle des accès précis, y compris des contrôles au niveau des lignes, des contrôles au niveau des colonnes et le masquage des données de colonne.

Sécurité des métadonnées

Les métadonnées font principalement référence aux informations de schéma associées aux données utilisateur présentes dans les ressources gérées par un lac.

Dataplex Discovery examine les données contenues dans les ressources gérées et extrait les informations de schéma tabulaires. Ces tables sont publiées dans les systèmes BigQuery, Dataproc Metastore et Data Catalog.

BigQuery

Chaque table découverte est associée à une table enregistrée dans BigQuery. Chaque zone est associée à un ensemble de données BigQuery sous lequel toutes les tables externes associées aux tables découvertes dans cette zone de données sont enregistrées.

Les tables découvertes hébergées par Cloud Storage sont enregistrées dans l'ensemble de données créé pour la zone.

Dataproc Metastore

Les bases de données et les tables sont mises à disposition dans le métastore Dataproc associé à l'instance de lac Dataplex. Chaque zone de données est associée à une base de données, et chaque élément peut avoir une ou plusieurs tables associées.

Les données d'un service Dataproc Metastore sont sécurisées par la configuration de votre réseau VPC-SC. L'instance Dataproc Metastore est fournie à Dataplex lors de la création du lac, ce qui en fait déjà une ressource gérée par l'utilisateur.

Data Catalog

Chaque table découverte est associée à une entrée dans Data Catalog, ce qui permet d'activer la recherche et la découverte.

Étant donné que Data Catalog nécessite des noms de stratégies IAM lors de la création d'une entrée, Dataplex fournit le nom de la stratégie IAM de la ressource d'élément Dataplex à laquelle l'entrée doit être associée. Par conséquent, les autorisations sur l'entrée Dataplex sont basées sur les autorisations de la ressource de l'élément. Attribuez les rôles Lecteur de métadonnées Dataplex (roles/dataplex.metadataReader) et Rédacteur de métadonnées Dataplex (roles/dataplex.metadataWriter) sur la ressource d'élément.

Étape suivante