IAM Data Catalog

Ce document décrit les rôles IAM (Identity and Access Management) qui permettent d'utiliser Data Catalog pour effectuer des recherches dans Google Cloud et y ajouter des tags ressources.

Terminologie IAM

Autorisations
Vérifiée au moment de l'exécution pour permettre aux utilisateurs d'effectuer une opération ou d'accéder une ressource Google Cloud. Les autorisations ne sont pas directement octroyées aux utilisateurs. À la place, ils se voient octroyer des rôles qui leur accordent des autorisations.
Rôle
Un rôle est un ensemble d'autorisations prédéfini. Rôles personnalisés comprenant d'une collection personnalisée d'autorisations sont également autorisés.

Afficher les rôles Data Catalog

Dans la console Google Cloud, procédez comme suit:

  1. Accédez à la page IAM et Admin > Rôles.

    Accéder à la page "Rôles"

  2. Dans le champ Filtre, sélectionnez Utilisé dans, saisissez Data Catalog ou Data Lineage, puis appuyez sur Entrée.

  3. Cliquez sur un rôle pour afficher ses autorisations dans le volet de droite.

    Par exemple, le rôle "Administrateur Data Catalog" dispose d'un accès complet Ressources Data Catalog.

Rôles Data Catalog prédéfinis

Certains rôles Data Catalog prédéfinis incluent le rôle Administrateur, lecteur Data Catalog et créateur de modèles de tag Data Catalog. Quelques exemples sont décrits dans les sections suivantes.

Pour obtenir la liste et la description des rôles prédéfinis Data Catalog et des autorisations associées à chacun d'eux, consultez Rôles Data Catalog

Rôle d'administrateur Data Catalog

Le rôle roles/datacatalog.admin a accès à toutes les Ressources Data Catalog. Un administrateur Data Catalog peut ajouter différents types d'utilisateurs à un projet Data Catalog.

Rôle de responsable des données Data Catalog

Le rôle roles/datacatalog.dataSteward vous permet d'ajouter, de modifier ou supprimer les responsables des données et l'aperçu en texte enrichi pour une entrée de données, par exemple table BigQuery.

Rôle "Lecteur Data Catalog"

Pour simplifier l'accès aux ressources Google Cloud, Data Catalog fournit le rôle roles/datacatalog.viewer avec autorisation de lecture des métadonnées pour toutes les ressources Google Cloud cataloguées.

Ce rôle accorde aussi les autorisations nécessaires pour afficher les tags Data Catalog des modèles et des tags.

Accordez le rôle de lecteur Data Catalog sur votre projet pour autoriser les utilisateurs pour afficher les ressources Google Cloud dans Data Catalog.

Rôle "Créateur de modèles de tag Data Catalog"

Le rôle roles/datacatalog.tagTemplateCreator permet aux utilisateurs de créer des modèles de tag.

Rôle d'administrateur de la recherche Data Catalog

Le rôle roles/datacatalog.searchAdmin permet aux utilisateurs de récupérer, via la recherche, toutes les ressources Google Cloud classées au sein d'un projet ou d'une organisation.

Rôle d'administrateur pour la configuration de migration Data Catalog

Le rôle roles/datacatalog.migrationConfigAdmin permet aux utilisateurs de définir et de récupérer de configuration liée à la migration des ressources Data Catalog vers Dataplex Catalog.

Rôles de traçabilité des données prédéfinis

Pour accéder au graphique de traçabilité d'une entrée Data Catalog, l'utilisateur doit avoir besoin à l'entrée concernée dans Data Catalog. Pour accéder au de Data Catalog, l'utilisateur a besoin du rôle "Lecteur" pour ressource système ou Lecteur Data Catalog (roles/datacatalog.viewer) sur le projet qui stocke le Entrée Data Catalog. Cette section décrit les rôles requis pour d'afficher et de manipuler le graphique de traçabilité.

Rôle de lecteur de la traçabilité

Lecteur de la traçabilité des données Le rôle (roles/datalineage.viewer) permet aux utilisateurs de consulter Dataplex des graphiques de traçabilité dans la console Google Cloud, et lire les informations de traçabilité à l'aide de l'API Data Lineage. La et les événements d'un processus donné sont tous stockés dans le même projet que processus. Dans le cas de la traçabilité automatisée, le processus, les exécutions et les événements sont stockés dans le projet dans lequel la tâche ayant généré la traçabilité a été en cours d'exécution. Il peut s'agir, par exemple, du projet dans lequel un job BigQuery a été en cours d'exécution.

Différents rôles sont nécessaires pour visualiser la traçabilité entre les éléments dans le graphique et pour afficher les métadonnées des éléments sur le graphique. Si vous optez pour la première version, vous avez besoin du lecteur de la traçabilité des données (roles/datalineage.viewer). Dans ce dernier cas, vous devez disposer des mêmes rôles que ceux utilisés pour accéder aux entrées de métadonnées dans Data Catalog. Les deux sous-sections suivantes fournissent plus de détails.

Rôles permettant d'afficher la traçabilité entre deux éléments

Pour afficher la traçabilité entre les éléments du graphique de traçabilité, l'utilisateur a besoin du rôle Lecteur de la traçabilité des données (roles/datalineage.viewer) pour les projets suivants:

  • Le projet depuis lequel l'utilisateur voit la traçabilité (appelé projet actif), c'est le projet de la liste déroulante en haut de la console Google Cloud ou le projet à partir duquel les appels d'API sont effectués. Il s'agit normalement du projet de ressources Data Catalog.
  • Les projets dans lesquels la traçabilité est enregistrée (appelés projet de calcul). La traçabilité est stockée dans le projet dans lequel le processus correspondant a été exécuté, comme décrit ci-dessus. Il peut être différent de celui qui stocke l'élément dont l'utilisateur voit la traçabilité.

Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès. Vous pouvez également obtenir les autorisations requises grâce aux rôles personnalisés ou à d'autres rôles prédéfinis.

Selon le cas d'utilisation,vous devrez peut-être accorder le rôle Lecteur de la traçabilité des données (roles/datalineage.viewer) au niveau du dossier ou de l'organisation pour vous assurer qu'un utilisateur aura accès au graphique de traçabilité complète (voir Attribuer ou révoquer un seul rôle). Les rôles requis pour la traçabilité des données ne peuvent être accordés que via la Google Cloud CLI.

Rôles permettant d'afficher les métadonnées des éléments dans le graphique de traçabilité

Lorsque les métadonnées d'un élément du graphique sont stockées dans Data Catalog, l'utilisateur ne peut les consulter que s'il dispose du rôle Lecteur sur la ressource système correspondante ou Lecteur Data Catalog (roles/datacatalog.viewer) pour le projet dans lequel l'entrée Data Catalog est stockée. L'accès aux métadonnées des éléments du graphique est indépendant de l'accès à la traçabilité. Il est possible que l'utilisateur ait accès aux éléments du graphique via les rôles de lecteur appropriés, mais qu'il ne puisse pas accéder à la traçabilité entre eux. C'est le cas lorsque l'utilisateur ne dispose pas du rôle Lecteur de la traçabilité des données (roles/datalineage.viewer) sur le projet dans lequel la traçabilité a été enregistrée. Dans ce cas, l'API et l'UI Data Lineage n'affichent pas la traçabilité et ne renvoient aucune erreur, afin d'éviter les fuites d'informations sur l'existence de la traçabilité. Par conséquent, l'absence de traçabilité pour un composant ne signifie pas qu'il n'y a pas de traçabilité. Il est possible que l'utilisateur n'ait pas accès à cette traçabilité.

Rôle de producteur d'événements de traçabilité des données

Le rôle roles/datalineage.producer permet aux utilisateurs d'enregistrer manuellement la traçabilité à l'aide de l'API Data Lineage.

Rôle d'éditeur de la traçabilité des données

Le rôle roles/datalineage.editor permet aux utilisateurs de modifier manuellement la traçabilité à l'aide de l'API Data Lineage.

Rôle d'administrateur de la traçabilité des données

Le rôle roles/datalineage.admin permet aux utilisateurs d'effectuer toutes les opérations de traçabilité présentées dans cette section.

Rôles permettant d'afficher les tags publics et privés

Vous pouvez rechercher des tags publics à l'aide d'une recherche simple. Vous pouvez afficher une entrée de données, y compris ses tags publics, à condition de disposer des autorisations nécessaires pour afficher les données entrée. Aucune autorisation supplémentaire n'est requise sur le modèle de tag. Pour autorisations requises pour afficher l'entrée de données, consultez le tableau de cette section.

Toutefois, nous vous recommandons d'accorder également l'autorisation datacatalog.tagTemplates.get l'autorisation aux utilisateurs censés rechercher ces tags publics. Ce permet aux utilisateurs d'utiliser aussi le prédicat de recherche tag: ou l'autorisation l'attribut de recherche du modèle de tag sur la page de recherche de Data Catalog.

Pour les tags privés, vous devez disposer de droits d'affichage à la fois sur le modèle de tag et sur entrée de données pour rechercher la balise et l'afficher sur la page des détails de l'entrée. Les utilisateurs doivent utiliser le prédicat de recherche tag: ou l'attribut de recherche du modèle de tag pour trouver les tags, La recherche simple de tags privés n'est pas prise en charge.

Remarques :

  • L'autorisation d'affichage requise sur le modèle de tag privé est datacatalog.tagTemplates.getTag

  • Les autorisations d'affichage sur les entrées de données pour les tags publics et privés est inclus dans le tableau suivant.

Ressource Permission Rôle
Ensembles de données, tables, modèles, routines et connexions BigQuery bigquery.datasets.get
bigquery.tables.get
bigquery.models.getMetadata
bigquery.routines.get
bigquery.connections.get
roles/datacatalog.tagTemplateViewer
roles/bigquery.metadataViewer
roles/bigquery.connectionUser
Sujets Pub/Sub pubsub.topics.get roles/datacatalog.tagTemplateViewer
roles/pubsub.viewer
Instances, bases de données, tables et vues Spanner Instance: spanner.instances.get
Database:spanner.databases.get
Table: spanner.databases.get
Views: spanner.databases.get
datacatalog.tagTemplates.getTag
Aucun rôle prédéfini n'est disponible.
Instances et tables Bigtable bigtable.instances.get
bigtable.tables.get
datacatalog.tagTemplates.getTag
roles/datacatalog.tagTemplateViewer
roles/bigtable.viewer
Services, bases de données et tables Dataproc Metastore metastore.tables.get
metastore.databases.get
metastore.services.get
roles/datacatalog.tagTemplateViewer
roles/metastore.metadataViewer
Entrées personnalisées datacatalog.entries.get Aucun rôle prédéfini n'est disponible.

Rôles pour rechercher des ressources Google Cloud

Avant de rechercher, découvrir ou afficher des ressources Google Cloud, Data Catalog vérifie que l'utilisateur dispose d'un rôle IAM avec les autorisations de lecture des métadonnées requises par BigQuery, Pub/Sub, Dataproc Metastore ou tout autre système source permettant d'accéder à la ressource.

Exemple : Data Catalog vérifie que l'utilisateur s'est vu attribuer un rôle avec bigquery.tables.get permission avant d'afficher les métadonnées de la table BigQuery.

Le tableau suivant répertorie les autorisations et les rôles associés nécessaires pour qu'un utilisateur puisse utiliser Data Catalog pour effectuer des recherches dans les ressources.

Ressource Permission Rôle
Ensembles de données, tables, modèles, routines et connexions BigQuery bigquery.datasets.get
bigquery.tables.get
bigquery.models.getMetadata
bigquery.routines.get
bigquery.connections.get
roles/bigquery.metadataViewer
roles/bigquery.connectionUser
Voir également Rôle de lecteur Data Catalog
Sujets Pub/Sub pubsub.topics.get roles/pubsub.viewer
Voir également Rôle de lecteur Data Catalog
Bases de données et tables Spanner Instance: spanner.instances.get
Base de données: spanner.databases.get
Vues: spanner.databases.get
Aucun rôle prédéfini n'est disponible.
Instances et tables Bigtable bigtable.instances.get
bigtable.tables.get
roles/bigtable.viewer
Voir également Rôle de lecteur Data Catalog
Lacs, zones, tables et ensembles de fichiers Dataplex dataplex.lakes.get
dataplex.zones.get
dataplex.entities.get
dataplex.entities.get
Aucun rôle prédéfini n'est disponible.
Services, bases de données et tables Dataproc Metastore metastore.tables.get
metastore.databases.get
metastore.services.get
roles/metastore.metadataViewer

Rôles permettant d'associer des tags aux ressources Google Cloud

Pour associer des tags publics et privés à des ressources Google Cloud, vous devez disposer des mêmes autorisations.

Data Catalog permet aux utilisateurs d'étendre les métadonnées sur Google Cloud ressources en lui associant des tags. Un ou plusieurs tags pouvant être associés à une ressource sont définis dans un modèle de tag.

Lorsqu'un utilisateur tente d'utiliser le modèle de tag pour associer un tag à un ressource Google Cloud, Data Catalog vérifie que l'utilisateur dispose des autorisations requises pour utiliser le modèle de tag et mettre à jour la ressource de métadonnées. Les autorisations sont accordées via des rôles IAM, comme indiqué dans le tableau suivant.

Le tableau suivant répertorie les autorisations et les rôles associés nécessaires pour d'associer des tags publics et privés à l'aide de Data Catalog aux ressources Google Cloud répertoriées.

Chaque ligne du tableau suivant liste les autorisations nécessaires pour taguer des ressources. Les rôles correspondants peuvent accorder des autorisations supplémentaires. Cliquez sur chaque rôle pour afficher toutes les autorisations associées.

Remarques :

  • Le propriétaire d'une entrée de données dispose de l'autorisation datacatalog.entries.updateTag par défaut. Tous les autres utilisateurs doivent disposer du rôle datacatalog.tagEditor.

  • L'autorisation datacatalog.tagTemplates.use est également requise pour tous les ressources répertoriées dans le tableau.

Ressource Permissions Rôle
Ensembles de données, tables,
modèles, routines et connexions BigQuery
bigquery.datasets.updateTag
bigquery.tables.updateTag
bigquery.models.updateTag
bigquery.routines.updateTag
bigquery.connections.updateTag
roles/datacatalog.tagTemplateUser
roles/datacatalog.tagEditor
roles/bigquery.dataEditor
Sujets Pub/Sub pubsub.topics.updateTag roles/datacatalog.tagTemplateUser
roles/datacatalog.tagEditor
roles/pubsub.editor
Bases de données et tables Spanner. Instance: spanner.instances.UpdateTag
Base de données: spanner.databases.UpdateTag
Table: spanner.databases.UpdateTag
Vues:spanner.databases.UpdateTag
Aucun rôle prédéfini n'est disponible.
Instances et tables Bigtable bigtable.instances.update
bigtable.tables.update
roles/datacatalog.tagTemplateUser
roles/datacatalog.tagEditor
roles/bigtable.admin
Lacs, zones, tables et ensembles de fichiers Dataplex dataplex.lakes.update
dataplex.zones.update
dataplex.entities.update
dataplex.entities.update
Aucun rôle prédéfini n'est disponible.
Services, bases de données et tables Dataproc Metastore metastore.tables.update
metastore.databases.update
metastore.services.update
roles/datacatalog.tagTemplateUser
roles/datacatalog.tagEditor
roles/metastore.editor
roles/metastore.metadataEditor

Rôles personnalisés pour les ressources Google Cloud

Les rôles d'éditeur prédéfinis pour les entrées de données d'autres systèmes Google Cloud peuvent fournir un accès en écriture plus étendu que nécessaire. Utilisez rôles personnalisés pour spécifier des autorisations *.updateTag seulement sur une ressource Google Cloud.

Rôles permettant de modifier la présentation du texte enrichi et les responsables des données dans Data Catalog

Les utilisateurs doivent disposer des rôles suivants pour joindre une présentation en texte enrichi et attribuer des données responsables des entrées dans Data Catalog:

Ressource Permissions Rôle
Projets Google Cloud datacatalog.entries.updateOverview
datacatalog.entries.updateContacts
roles/datacatalog.dataSteward

Rôles permettant de modifier la configuration de la migration dans Data Catalog

Les utilisateurs doivent disposer des rôles suivants pour définir et récupérer la configuration liée à la migration de Data Catalog vers Dataplex:

Ressource Permissions Rôle
Projets et organisations Google Cloud datacatalog.migrationConfig.set
datacatalog.migrationConfig.get
roles/datacatalog.migrationConfigAdmin

Fédération d'identité dans Data Catalog

La fédération d'identité vous permet d'utiliser un fournisseur d'identité externe (IdP) pour : à authentifier et à autoriser les utilisateurs à accéder aux services Google Cloud Cloud IAM.

Data Catalog prend en charge la fédération d'identité avec les Limites:

Pour en savoir plus