Présentation du contrôle des accès basé sur les rôles

Cette page décrit les autorisations précises avec le contrôle des accès basé sur les rôles (RBAC), disponible dans Cloud Data Fusion 6.5 et versions ultérieures.

RBAC restreint l'accès au sein des environnements dans lesquels vous développez des pipelines dans Cloud Data Fusion. Le contrôle d'accès RBAC vous aide à gérer qui a accès aux ressources Cloud Data Fusion, ce qu'ils peuvent faire avec ces ressources et à quelles zones (telles que les instances ou les espaces de noms) ils peuvent accéder. Cloud Data Fusion RBAC est un système d'autorisation qui fournit une gestion précise des accès basée sur Identity and Access Management (IAM).

Quand utiliser RBAC

Le contrôle des accès basé sur les rôles fournit une isolation au niveau de l'espace de noms dans une seule instance Cloud Data Fusion. Elle est recommandée pour les cas d'utilisation suivants:

  • Aider à réduire le nombre d'instances utilisées par votre organisation.
  • Disposer de plusieurs développeurs, équipes ou unités commerciales utilise une seule instance Cloud Data Fusion.

Grâce à Cloud Data Fusion RBAC, les organisations peuvent :

  • Autorisez un utilisateur à n'exécuter un pipeline que dans un espace de noms, mais pas à modifier les artefacts ni les profils de calcul d'exécution.
  • Autoriser un utilisateur à uniquement afficher le pipeline, sans pouvoir le modifier ni l'exécuter.
  • Autorisez un utilisateur à créer, déployer et exécuter un pipeline.

Recommandé:Même lorsque vous utilisez RBAC, utilisez des projets et des instances distincts pour les environnements de développement et de production afin de maintenir l'isolation, la sécurité et la stabilité des performances.

Limites

  • Un utilisateur peut se voir attribuer un ou plusieurs rôles au niveau de l'instance ou de l'espace de noms.
  • Le contrôle RBAC n'est disponible que dans l'édition Cloud Data Fusion Enterprise.
  • Nombre d'espaces de noms: aucune limite stricte sur le nombre d'espaces de noms par instance.
  • Pour connaître le nombre maximal d'utilisateurs simultanés dans une instance pour laquelle RBAC est activé, consultez la section Tarifs.
  • Rôles personnalisés: la création de rôles RBAC personnalisés n'est pas disponible.
  • Cloud Data Fusion RBAC ne permet pas l'autorisation sur la gestion des connexions.
  • Lorsque vous utilisez des jetons d'accès OAuth de compte de service pour accéder à des instances pour lesquelles RBAC version 6.5 est activée, les champs d'application suivants doivent être spécifiés, en particulier le champ d'application userinfo.email. Sans elles, vous rencontrerez des erreurs d'autorisation refusée.
    • https://www.googleapis.com/auth/userinfo.email
    • https://www.googleapis.com/auth/cloud-platform ou https://www.googleapis.com/auth/servicecontrol

Role assignments (Attributions de rôles)

Une attribution de rôle se compose de trois éléments : le compte principal, la définition du rôle et le champ d'application.

Compte principal

Un compte principal (anciennement appelé membre) peut être un compte Google (pour les utilisateurs finaux), un compte de service (pour les applications et les machines virtuelles) ou un groupe Google qui demande l'accès aux ressources Cloud Data Fusion. Vous pouvez attribuer un rôle à l'un de ces comptes principaux.

Définition du rôle

Un rôle contient un ensemble d'autorisations qui vous permet d'effectuer des actions spécifiques sur les ressources Google Cloud.

Cloud Data Fusion fournit plusieurs rôles prédéfinis que vous pouvez utiliser.

Exemples :

  • Le rôle Administrateur d'instance (datafusion.admin) permet aux comptes principaux de créer et de supprimer des espaces de noms, et d'accorder des autorisations.
  • Le rôle Développeur (datafusion.developer) permet aux comptes principaux de créer et de supprimer des pipelines, de les déployer et d'exécuter des aperçus.

Champ d'application

Le champ d'application correspond à l'ensemble des ressources auxquelles l'accès s'applique. Lorsque vous attribuez un rôle, vous pouvez restreindre davantage les actions autorisées en définissant un champ d'application (par exemple, une instance ou un espace de noms). Cela est utile si vous souhaitez attribuer le rôle Développeur à quelqu'un, mais uniquement pour un espace de noms.

Recommandations pour améliorer la sécurité

Il peut être difficile d'adopter un modèle de sécurité et de l'adapter aux besoins et aux exigences de votre entreprise. Les recommandations suivantes ont pour but de vous aider à simplifier votre adoption du modèle RBAC de Cloud Data Fusion :

  • Le rôle Administrateur d'instances doit être accordé avec précaution. Ce rôle accorde un accès complet à une instance et à toutes ses ressources Cloud Data Fusion sous-jacentes. Un compte principal doté de ce rôle peut accorder des autorisations à d'autres utilisateurs à l'aide de l'API REST.
  • Le rôle d'administrateur d'instances ne doit pas être accordé lorsque les comptes principaux doivent avoir accès à des espaces de noms individuels au sein d'une instance Cloud Data Fusion. Attribuez plutôt le rôle d'accesseur d'instances avec l'un des rôles Lecteur/Développeur/Opérateur/Éditeur sur un sous-ensemble des espaces de noms.
  • Le rôle Accesseur d'instances peut être attribué en premier, car il permet aux comptes principaux d'accéder à l'instance, mais n'accorde l'accès à aucune ressource de l'instance. Ce rôle est généralement utilisé conjointement avec l'un des rôles Lecteur/Développeur/Opérateur/Éditeur pour accorder l'accès à un ou plusieurs sous-ensemble des espaces de noms d'une instance.
  • Le rôle de lecteur est recommandé pour les utilisateurs ou les groupes Google qui souhaitent disposer d'un libre-service pour comprendre l'état des tâches en cours, ou pour afficher des pipelines ou des journaux avec des instances Cloud Data Fusion. Par exemple, les utilisateurs de rapports quotidiens qui souhaitent savoir si le traitement est terminé.
  • Le rôle Développeur est recommandé aux développeurs ETL chargés de créer, de tester et de gérer les pipelines.
  • Le rôle Opérateur pour un espace de noms est recommandé pour les utilisateurs fournissant des services d'administration des opérations ou DevOps. Ils peuvent effectuer toutes les actions que les développeurs peuvent effectuer (à l'exception de la prévisualisation des pipelines), déployer des artefacts et gérer des profils de calcul.
  • Le rôle d'éditeur pour un espace de noms est un rôle privilégié qui accorde à l'utilisateur ou au groupe Google un accès complet à toutes les ressources de l'espace de noms. Le rôle d'éditeur peut être considéré comme l'union des rôles de développeur et d'opérateur.
  • Les opérateurs et les administrateurs doivent se méfier d'installer des plug-ins ou des artefacts non approuvés, car ils peuvent présenter un risque de sécurité.

Dépannage

Cette section de page explique comment résoudre les problèmes liés au contrôle des accès basé sur les rôles (RBAC) dans Cloud Data Fusion.

Un compte principal disposant du rôle Lecteur Cloud Data Fusion pour un espace de noms dans RBAC peut modifier les pipelines

L'accès est basé sur une combinaison de rôles IAM et RBAC. Les rôles IAM sont prioritaires sur les rôles RBAC. Vérifiez si le compte principal dispose des rôles IAM Éditeur de projet ou Administrateur Cloud Data Fusion.

Un compte principal disposant du rôle d'administrateur d'instances dans RBAC ne peut pas afficher les instances Cloud Data Fusion dans la console Google Cloud

En raison d'un problème connu dans Cloud Data Fusion, les comptes principaux dotés du rôle "Administrateur d'instances" ne peuvent pas afficher les instances dans la console Google Cloud. Pour résoudre le problème, accordez au compte principal le rôle Lecteur de projet ou l'un des rôles IAM Cloud Data Fusion, en plus de lui attribuer le rôle d'administrateur d'une instance. Fournit un accès Lecteur au compte principal pour toutes les instances du projet.

Empêcher un compte principal d'afficher les espaces de noms pour lesquels il n'a aucun rôle

Pour empêcher un compte principal d'afficher les espaces de noms lorsqu'il n'a pas de rôle, il ne doit pas disposer du lecteur de projet ni des rôles IAM de Cloud Data Fusion. Accordez plutôt des rôles RBAC uniquement au compte principal dans l'espace de noms où il doit fonctionner.

Le compte principal doté de ce type d'accès ne verra pas la liste des instances Cloud Data Fusion dans la console Google Cloud. Donnez-leur plutôt un lien direct vers l'instance, comme suit : https://INSTANCE_NAME-PROJECT_ID.REGION_NAME.datafusion.googleusercontent.com/

Lorsque le compte principal ouvre l'instance, Cloud Data Fusion affiche la liste des espaces de noms pour lesquels le rôle RBAC lui est attribué.

Attribuer le rôle d'accesseur Cloud Data Fusion à un compte principal

Le rôle d'accesseur est implicitement attribué à un compte principal lorsqu'un autre rôle RBAC lui est attribué pour une instance Cloud Data Fusion. Pour vérifier si un compte principal dispose de ce rôle sur une instance particulière, consultez IAM Policy Analyzer.

Étapes suivantes