DataWorks contrôle l'accès à MaxCompute en mappant les rôles d'espace de travail (prédéfinis ou personnalisés) aux rôles du moteur MaxCompute associé. Lorsque vous attribuez un rôle d'espace de travail à un utilisateur RAM, celui-ci obtient les autorisations correspondantes dans l'environnement de développement. L'accès à l'environnement de production n'est pas accordé par défaut.
Informations contextuelles
DataWorks propose des rôles d'espace de travail prédéfinis et personnalisés pour contrôler l'accès des utilisateurs aux modules de l'espace de travail et aux projets du moteur de développement. Ces deux types de rôles prennent en charge l'autorisation par défaut et manuelle sur le projet du moteur de développement.
Un compte Alibaba Cloud dispose des autorisations les plus élevées sur toutes ses ressources cloud. Les contrôles d'autorisation décrits dans cette rubrique s'appliquent principalement aux utilisateurs RAM.
Parmi les rôles prédéfinis, seuls les utilisateurs RAM auxquels est attribué le rôle Développement ou Gestionnaire d'espace de travail peuvent créer des nœuds et exécuter des commandes de création de table dans DataStudio.
Procédure
|
Étape |
Objectif |
Références |
|
1 |
Comprendre les autorisations de base des rôles prédéfinis de DataWorks. |
|
|
2 |
Découvrir comment les membres de l'espace de travail DataWorks obtiennent des autorisations sur le moteur. |
Comment les utilisateurs RAM obtiennent des autorisations sur le moteur |
|
3 |
Comprendre comment les administrateurs contrôlent les autorisations sur l'environnement de production. |
|
|
4 |
Vérifier les autorisations du moteur à l'aide de commandes. |
Remarques
Dans un espace de travail en mode standard, un utilisateur RAM ne dispose pas d'autorisations sur le projet de production par défaut. Pour interroger des tables dans l'environnement de production, l'utilisateur RAM doit demander des autorisations dans Security Center. Pour plus d'informations sur la demande d'autorisations de données, consultez Contrôler l'accès aux données MaxCompute.
Dans un espace de travail en mode basique, un utilisateur RAM dispose par défaut de toutes les autorisations du projet, ce qui rend impossible un contrôle granulaire des autorisations de données.
Autorisations de base des rôles prédéfinis
Par défaut, les rôles prédéfinis de DataWorks accordent l'accès à l'environnement de développement, mais pas à l'environnement de production.
Parmi les rôles prédéfinis, seuls les utilisateurs RAM auxquels est attribué le rôle Développement ou Gestionnaire d'espace de travail peuvent créer des nœuds dans DataStudio pour exécuter des commandes de gestion des tables, des ressources et des fonctions.
|
Environnement |
Description |
|
Autorisations du moteur MaxCompute dans un environnement de développement |
DataWorks et MaxCompute utilisent tous deux un système de contrôle d'accès basé sur les rôles (RBAC), permettant un mappage naturel entre leurs rôles. Lorsqu'un membre de l'espace de travail reçoit un rôle prédéfini, il obtient automatiquement les autorisations du rôle de moteur correspondant dans MaxCompute. |
|
Autorisations du moteur MaxCompute dans un environnement de production |
Par défaut, un utilisateur RAM ne peut pas effectuer directement d'opérations dans l'environnement de production. Ni les rôles prédéfinis ni les rôles personnalisés d'un espace de travail DataWorks n'accordent d'autorisations sur le moteur MaxCompute dans l'environnement de production. Pour accéder aux tables de l'environnement de production, vous devez demander des autorisations dans Security Center. Pour plus d'informations, consultez Contrôler l'accès aux données MaxCompute. Remarque
Parmi les rôles prédéfinis, seuls les utilisateurs RAM auxquels est attribué le rôle Développement ou Gestionnaire d'espace de travail peuvent créer des nœuds dans DataStudio pour exécuter des commandes de création de table. |
Comment les utilisateurs RAM obtiennent des autorisations sur le moteur
Pour protéger les données de production dans un espace de travail en mode standard, DataWorks contrôle la manière dont les utilisateurs RAM accèdent aux tables MaxCompute.
-
Obtenir des autorisations sur le projet de développement (automatique) :
Lorsqu'un membre de l'espace de travail reçoit un rôle prédéfini, il obtient automatiquement des autorisations sur le projet de moteur. Pour plus d'informations, consultez Scénario 1 : Processus d'autorisation pour les rôles d'espace de travail prédéfinis.
Lorsqu'un membre de l'espace de travail reçoit un rôle personnalisé, il obtient également des autorisations sur le projet de moteur. Pour plus d'informations, consultez Scénario 2 : Processus d'autorisation pour les rôles d'espace de travail personnalisés.
-
Obtenir des autorisations sur le projet de production (demande manuelle requise) : Vous devez demander des autorisations dans Security Center. Le tableau suivant décrit les cas d'utilisation. Pour plus d'informations sur l'utilisation de Security Center, consultez Contrôler l'accès aux données MaxCompute.
Scénario
Description
Un utilisateur dans un environnement de développement doit accéder à une table dans l'environnement de production au sein du même espace de travail.

Par défaut, si un utilisateur RAM n'est pas configuré comme identité d'accès pour le moteur de production, il ne peut pas agir sur les tables de production depuis DataStudio. Pour obtenir l'accès, l'utilisateur RAM doit soumettre une demande dans Security Center. Une fois la demande approuvée, l'utilisateur peut effectuer les opérations requises sur les tables dans DataStudio.
Un utilisateur doit accéder à une table dans l'environnement de développement ou de production d'un autre espace de travail.

Par défaut, un utilisateur RAM ne peut pas accéder aux tables des environnements de développement ou de production d'autres projets depuis DataStudio. Pour activer l'accès inter-projets, l'utilisateur RAM doit soumettre une demande dans Security Center. Une fois la demande approuvée, l'utilisateur peut effectuer les opérations requises sur les tables dans DataStudio.
Contrôle des autorisations de données MaxCompute
Les utilisateurs RAM qui doivent accéder aux données de production doivent suivre un processus d'approbation, ce qui permet aux administrateurs de contrôler les autorisations sur l'environnement de production.
Security Center propose un flux de travail d'approbation intégré pour les autorisations sur les tables de production.
Approval Center prend en charge les flux de travail d'approbation personnalisés.
Afficher les autorisations du moteur MaxCompute
Exécutez les commandes suivantes dans une tâche SQL MaxCompute pour interroger vos autorisations.
show grants: Affichez vos propres autorisations d'accès.show grants for <username>: Affichez les autorisations d'accès d'un utilisateur spécifique. Seuls les administrateurs de l'espace de travail peuvent exécuter cette commande.
Annexe : Processus d'autorisation des rôles d'espace de travail
Scénario 1 : Autorisation de rôle prédéfini
Fonctionnement : Lorsqu'un utilisateur RAM est ajouté à un espace de travail et qu'un rôle prédéfini lui est attribué, un rôle MaxCompute correspondant lui est automatiquement accordé. Cela confère à l'utilisateur les autorisations du rôle MaxCompute sous-jacent. Pour plus d'informations sur les mappages entre les rôles prédéfinis et les autorisations MaxCompute, consultez Annexe : Mappages entre les rôles d'espace de travail prédéfinis et les autorisations du moteur MaxCompute.
-
Exemple : Un utilisateur disposant du rôle Gestionnaire d'espace de travail ajoute un utilisateur RAM en tant que membre de l'espace de travail et lui attribue le rôle Development.
RemarquePour plus d'informations sur l'ajout de membres et l'attribution d'autorisations, consultez Contrôler les autorisations sur les modules de l'espace de travail.

Une fois ajouté, l'utilisateur RAM dispose des autorisations suivantes dans DataWorks et le moteur MaxCompute.
Autorisations DataWorks : Avec le rôle Development, l'utilisateur RAM peut développer et valider du code dans DataWorks, mais ne peut pas le déployer dans l'environnement de production. Le déploiement en production nécessite des autorisations O&M, détenues par des rôles tels que Project Owner, Administrator et O&M.
-
Autorisations du moteur MaxCompute : Lorsque l'utilisateur RAM reçoit le rôle Development, il se voit également attribuer le rôle Role_Project_Dev dans le moteur MaxCompute. Ce rôle accorde des autorisations sur des objets tels que les tables au sein du projet de développement MaxCompute.
RemarqueSi vous attribuez à un utilisateur RAM le rôle prédéfini Gestionnaire d'espace de travail, celui-ci reçoit des autorisations étendues sur les fonctionnalités de DataWorks, mais ne peut toujours pas accéder directement aux tables de production.
L'utilisateur RAM décrit ici fait référence à un utilisateur qui n'est pas désigné comme identité d'accès du moteur de planification pour le projet de production.
Scénario 2 : Autorisation de rôle personnalisé
Exemple : Un utilisateur disposant du rôle Gestionnaire d'espace de travail ajoute un utilisateur RAM en tant que membre de l'espace de travail et lui attribue un rôle d'espace de travail DataWorks personnalisé.
Lorsque vous créez un rôle personnalisé dans un espace de travail DataWorks, vous pouvez le mapper à un rôle de moteur MaxCompute. Une fois le rôle attribué à un membre, l'utilisateur RAM obtient les autorisations correspondantes dans DataWorks et le moteur MaxCompute. Voici les détails.
Pour plus d'informations sur la création d'un rôle DataWorks personnalisé, consultez Contrôler les autorisations sur les modules de l'espace de travail. Pour plus d'informations sur l'ajout de membres et l'attribution d'autorisations, consultez Contrôler les autorisations sur les modules de l'espace de travail.
Autorisations DataWorks : Lorsqu'un utilisateur RAM reçoit un rôle personnalisé dans DataWorks, il ne peut accéder qu'aux modules autorisés par ce rôle.
-
Autorisations du moteur MaxCompute :
Si le rôle DataWorks personnalisé n'est mappé à aucun rôle de moteur, l'utilisateur RAM ne dispose d'aucune autorisation dans le moteur MaxCompute et ne peut pas exécuter de commandes pour interroger le moteur.
Si le rôle DataWorks personnalisé est mappé à un rôle de moteur, l'utilisateur RAM hérite des autorisations du rôle de moteur MaxCompute mappé.
Par défaut, un utilisateur RAM ajouté à un espace de travail ne dispose d'aucune autorisation dans l'environnement de production, sauf s'il est désigné comme identité d'accès du moteur de planification. Pour opérer sur ou accéder aux tables de production, l'utilisateur doit demander des autorisations dans Security Center. Pour plus d'informations, consultez Demander des autorisations de table dans la nouvelle version de Security Center. Pour plus d'informations sur les identités d'accès MaxCompute, consultez Configurer un espace de travail.
FAQ
Pour plus d'informations sur les problèmes courants liés aux autorisations, consultez FAQ sur la gestion des autorisations.
Annexe : Interroger les autorisations avec MaxCompute SQL
MaxCompute permet d'interroger les informations d'autorisation pour les utilisateurs, les rôles et les objets à l'aide d'instructions SQL. Pour plus d'informations, consultez Interroger les informations d'autorisation à l'aide de MaxCompute SQL.
Étapes suivantes
MaxCompute prend en charge l'accès aux ressources inter-projets, permettant aux développeurs d'accéder directement aux ressources de production depuis DataStudio. Pour plus de détails sur la manière dont les membres de l'espace de travail peuvent accéder aux ressources entre différents projets, consultez Accès aux ressources MaxCompute et autorisations dans différents modes d'espace de travail.