Ce document décrit les rôles IAM (Identity and Access Management) qui permettent aux utilisateurs d'utiliser Data Catalog pour rechercher des ressources Google Cloud et leur ajouter des tags.
Terminologie IAM
- Autorisations
- Vérifié 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. Les rôles personnalisés constitués d'un ensemble personnalisé d'autorisations sont également autorisés.
Afficher les rôles Data Catalog
Dans la console Google Cloud, procédez comme suit:
Accédez à la page IAM et administration > Rôles.
Dans le champ Filtre, sélectionnez Utilisé dans, saisissez
Data Catalog
ouData Lineage
, puis cliquez sur Entrée.Cliquez sur un rôle pour afficher ses autorisations dans le volet de droite.
Par exemple, le rôle d'administrateur Data Catalog dispose d'un accès complet à toutes les ressources Data Catalog.
Rôles Data Catalog prédéfinis
Certains rôles Data Catalog prédéfinis incluent le rôle d'administrateur Data Catalog, de lecteur Data Catalog et de créateur de modèles de tag Data Catalog. Certains de ces rôles sont décrits dans les sections suivantes.
Pour obtenir la liste et la description des rôles prédéfinis de Data Catalog et des autorisations associées à chaque rôle, consultez la page 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 DataCatalog
Le rôle roles/datacatalog.dataSteward
vous permet d'ajouter, de modifier ou de supprimer les responsables des données et la présentation en texte enrichi pour une entrée de données telle qu'une table BigQuery.
Rôle "Lecteur Data Catalog"
Pour simplifier l'accès aux ressources Google Cloud, Data Catalog attribue le rôle roles/datacatalog.viewer
avec une autorisation de lecture des métadonnées pour toutes les ressources Google Cloud cataloguées.
Ce rôle accorde également les autorisations nécessaires pour afficher des modèles de tag et des tags Data Catalog.
Accordez le rôle de lecteur Data Catalog sur votre projet pour permettre aux utilisateurs d'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 une recherche, toutes les ressources Google Cloud cataloguées d'un projet ou d'une organisation.
Rôles prédéfinis pour la traçabilité des données
Pour accéder au graphique de traçabilité d'une entrée Data Catalog, l'utilisateur doit avoir accès à cette entrée dans Data Catalog. Pour accéder à l'entrée Data Catalog, l'utilisateur doit disposer d'un rôle de lecteur sur la ressource système correspondante ou d'un rôle de lecteur Data Catalog (roles/datacatalog.viewer
) correspondant dans le projet qui stocke l'entrée Data Catalog. Cette section décrit les rôles requis pour afficher et manipuler le graphique de traçabilité.
Rôle de lecteur de la traçabilité
Le rôle Lecteur de traçabilité des données (roles/datalineage.viewer
) permet aux utilisateurs d'afficher les graphiques de traçabilité Dataplex dans la console Google Cloud et de lire les informations de traçabilité à l'aide de l'API Data Lineage. Les exécutions et les événements d'un processus donné sont tous stockés dans le même projet que le 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 qui a généré la traçabilité était en cours d'exécution. Il peut s'agir, par exemple, du projet dans lequel une tâche BigQuery était en cours d'exécution.
Vous avez besoin de différents rôles pour visualiser la traçabilité et les métadonnées des éléments dans le graphique. Dans le premier cas, vous avez besoin du lecteur de la traçabilité des données (roles/datalineage.viewer
). Dans le second 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 des informations plus détaillées.
Rôles permettant d'afficher la traçabilité entre deux éléments
Pour afficher la traçabilité entre les éléments sur le graphique de traçabilité, l'utilisateur doit disposer du rôle Lecteur de traçabilité des données (roles/datalineage.viewer
) sur les projets suivants:
- Projet à partir duquel l'utilisateur consulte la traçabilité (appelé projet actif), soit le projet dans 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 ressource Data Catalog.
- 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. Ce projet peut être différent de celui qui stocke l'asset dont l'utilisateur consulte 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 via des 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 garantir qu'un utilisateur aura accès au graphique de traçabilité complet (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 sur 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 afficher que s'il dispose d'un rôle de lecteur sur la ressource système correspondante ou de Lecteur Data Catalog (roles/datacatalog.viewer
) sur 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 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 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 toute fuite d'informations sur l'existence de la traçabilité. Par conséquent, l'absence de traçabilité d'un élément ne signifie pas qu'il n'est pas traçable. L'utilisateur n'a peut-être 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 des informations de traçabilité à l'aide de l'API de traçabilité des données.
Rôle d'éditeur de la traçabilité des données
Le rôle roles/datalineage.editor
permet aux utilisateurs de modifier manuellement les informations de traçabilité à l'aide de l'API de traçabilité des données.
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é répertorié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 l'entrée de données. Aucune autorisation supplémentaire n'est requise sur le modèle de tag. Pour connaître les 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
aux utilisateurs censés rechercher ces tags publics. Cette autorisation permet aux utilisateurs d'utiliser également le prédicat de recherche tag: ou l'attribut de recherche de modèle de tag dans la page de recherche Data Catalog.
Pour les tags privés, vous devez disposer des autorisations d'affichage au niveau du modèle de tag et de l'entrée de données afin de rechercher la balise et de l'afficher sur la page d'informations de l'entrée. Les utilisateurs doivent utiliser le prédicat de recherche tag: ou l'attribut de recherche de modèle de tag pour trouver les balises. La recherche simple de balises privées n'est pas prise en charge.
Remarques :
L'autorisation d'affichage requise pour le modèle de tag privé est
datacatalog.tagTemplates.getTag
.Les autorisations d'affichage sur l'entrée de données des tags publics et privés sont incluses dans le tableau suivant.
Ressource | Autorisation | 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 dont un utilisateur a besoin pour effectuer une recherche dans les ressources Google Cloud répertoriées à l'aide de Data Catalog.
Ressource | Autorisation | 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 Lecteur Data Catalog |
Sujets Pub/Sub | pubsub.topics.get |
roles/pubsub.viewer Voir également Rôle 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 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 pour associer des tags aux ressources Google Cloud
Les mêmes autorisations sont nécessaires pour associer des tags publics et privés à des ressources Google Cloud.
Data Catalog permet aux utilisateurs d'étendre les métadonnées sur les ressources Google Cloud en 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 à une ressource Google Cloud, Data Catalog vérifie qu'il dispose des autorisations nécessaires pour utiliser le modèle de tag et mettre à jour les métadonnées de la ressource. 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 qu'un utilisateur puisse utiliser Data Catalog afin d'associer des tags publics et privés aux ressources Google Cloud répertoriées.
Chaque ligne du tableau suivant répertorie les autorisations requises pour ajouter des tags aux 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 par défaut de l'autorisation
datacatalog.entries.updateTag
. Tous les autres utilisateurs doivent disposer du rôle datacatalog.tagEditor.L'autorisation
datacatalog.tagTemplates.use
est également requise pour toutes les ressources répertoriées dans le tableau.
Ressource | Autorisations | 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 provenant d'autres systèmes Google Cloud peuvent fournir un accès en écriture plus large que nécessaire. Utilisez des rôles personnalisés pour spécifier les autorisations *.updateTag
uniquement sur une ressource Google Cloud.
Rôles permettant de modifier la présentation en 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 responsables des données aux entrées dans Data Catalog:
Ressource | Autorisations | Rôle |
---|---|---|
Projets Google Cloud | datacatalog.entries.updateOverview datacatalog.entries.updateContacts |
roles/datacatalog.dataSteward |
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 des utilisateurs auprès des services Google Cloud avec IAM.
Data Catalog accepte la fédération d'identité avec les limites suivantes:
- Les méthodes SearchCatalog et StarEntry de l'API Data Catalog ne sont compatibles qu'avec la fédération des identités des employés et ne sont pas disponibles pour la fédération d'identité de charge de travail.
- Dataplex n'est pas compatible avec la console Google Cloud pour les utilisateurs de la fédération d'identité
Pour en savoir plus
- Rôles Dataplex
- Rôles Data Catalog
- Contrôle des accès dans BigQuery
- Contrôle des accès Pub/Sub
- Contrôle des accès à Dataproc Metastore