MaxCompute vous permet d'interroger les autorisations d'un utilisateur ou d'un rôle, ainsi que les autorisations associées à un objet, en utilisant MaxCompute SQL. Cette rubrique décrit comment interroger les autorisations à l'aide de MaxCompute SQL et fournit des exemples.
Le tableau suivant présente les opérations d'interrogation des autorisations que vous pouvez effectuer après avoir accordé des autorisations à un utilisateur ou à un rôle, selon les méthodes d'autorisation fournies par MaxCompute.
MaxCompute affiche les lettres A, D, C et G pour présenter les autorisations d'un utilisateur ou d'un rôle dans le résultat de la requête.
A : Autoriser. L'opération est autorisée.
D : Refuser. L'opération est refusée.
C : Avec condition. Les autorisations peuvent être accordées sous certaines conditions.
G : Avec option d'octroi. Les autorisations sur l'objet spécifié peuvent être accordées à d'autres entités.
Interroger les autorisations d'un rôle spécifié
-
Syntaxe
show grants for role <role_name>; -
Paramètres
Paramètre
Obligatoire
Description
role_name
Oui
Nom du rôle dont vous souhaitez interroger les autorisations.
Vous pouvez exécuter la commande
list roles;sur le client MaxCompute pour obtenir le nom du rôle. -
Résultat de la requête
Le résultat de la requête inclut les autorisations basées sur les ACL, les politiques et les autorisations de téléchargement.
-
Exemples
Le rôle Worker est utilisé dans le projet test_project_a. Exemple de commande :
show grants for role Worker;Le résultat suivant est renvoyé :
Authorization Type: ACL [role/Worker] A projects/test_project_a: CreateTable | CreateResource | CreateInstance | CreateFunction | List A projects/test_project_a/tables/bank_data: Download | Describe | Select Expires:20xx-xx-xxTxx:xx:xx+xxxx Authorization Type: Policy [role/Worker] A projects/test_project_a/tables/bak*: Download A projects/test_project_a/tables/sale_detail: Update A projects/test_project_a/tables/tb_*: Download | Drop A projects/test_project_a/tables/view_1: Drop
Interroger les autorisations d'un rôle spécifié et les informations sur les utilisateurs auxquels ce rôle est attribué
-
Syntaxe
describe role <role_name>; -
Paramètres
Paramètre
Obligatoire
Description
role_name
Oui
Nom du rôle dont vous souhaitez interroger les autorisations.
Vous pouvez exécuter la commande
list roles;sur le client MaxCompute pour obtenir le nom du rôle. -
Résultat de la requête
Le résultat de la requête inclut les autorisations basées sur les ACL, les politiques et les autorisations de téléchargement.
-
Exemple
Le compte Alibaba Cloud Bob@aliyun.com est le propriétaire du projet test_project_a, et le rôle Worker est utilisé dans ce projet. Exemple de commande :
describe role Worker;Le résultat suivant est renvoyé :
[users] RAM$Bob@aliyun.com:Allen Authorization Type: ACL A projects/test_project_a: CreateTable | CreateResource | CreateInstance | CreateFunction | List A projects/test_project_a/tables/bank_data: Download Authorization Type: Policy A projects/test_project_a/tables/bak*: Download A projects/test_project_a/tables/sale_detail: Update A projects/test_project_a/tables/tb_*: Download | Drop A projects/test_project_a/tables/view_1: Drop
Interroger les autorisations de l'utilisateur actuel et les informations sur le rôle qui lui est attribué
-
Syntaxe
show grants; -
Résultat de la requête
Le résultat de la requête varie selon que l'utilisateur actuel est le propriétaire du projet :
Si l'utilisateur actuel est le propriétaire du projet, le compte Alibaba Cloud de l'utilisateur et les projets créés par celui-ci sont renvoyés.
Si l'utilisateur actuel n'est pas le propriétaire du projet, le rôle attribué à l'utilisateur ainsi que ses autorisations basées sur les ACL, les politiques et les autorisations de téléchargement sont renvoyés.
-
Exemple
Le compte Alibaba Cloud Bob@aliyun.com est le propriétaire du projet test_project_a. Allen est un utilisateur RAM ajouté au projet.
-
Si vous accédez au projet en utilisant le compte Alibaba Cloud Bob@aliyun.com, exécutez la commande
show grants;. Le résultat suivant est renvoyé :[ALIYUN$Bob@aliyun.com] projects/test_project_a: Project Owner -
Si vous accédez au projet en utilisant l'utilisateur RAM Allen, exécutez la commande
show grants;. Le résultat suivant est renvoyé :[roles] worker Authorization Type: ACL [user/RAM$Bob@aliyun.com:Allen] A projects/test_project_a: CreateTable | CreateResource | CreateInstance | CreateFunction | List A projects/test_project_a/packages/project_test_b.datashare: Read Authorization Type: Policy [role/worker] A projects/test_project_a/tables/tb_*: Drop | Download
-
Interroger les autorisations d'un utilisateur spécifié et les informations sur le rôle qui lui est attribué
-
Syntaxe
show grants for <user_name>; -
Paramètres
Paramètre
Obligatoire
Description
user_name
Oui
Nom de l'utilisateur dont vous souhaitez interroger les autorisations.
Vous pouvez exécuter la commande
list users;sur le client MaxCompute pour obtenir la liste des utilisateurs. -
Résultat de la requête
Le résultat de la requête varie selon que l'utilisateur actuel est le propriétaire du projet :
Si l'utilisateur actuel est le propriétaire du projet, le compte Alibaba Cloud de l'utilisateur et les projets créés par celui-ci sont renvoyés.
Si l'utilisateur actuel n'est pas le propriétaire du projet, le rôle attribué à l'utilisateur ainsi que ses autorisations basées sur les ACL, les politiques et les autorisations de téléchargement sont renvoyés.
-
Exemple
Le compte Alibaba Cloud Bob@aliyun.com est le propriétaire du projet test_project_a. Allen est un utilisateur RAM ajouté au projet.
-
Interrogez les autorisations du compte Alibaba Cloud Bob@aliyun.com. Exemple de commande :
show grants for ALIYUN$Bob@aliyun.com;Le résultat suivant est renvoyé :
[ALIYUN$Bob@aliyun.com] projects/test_project_a: Project Owner -
Interrogez les autorisations de l'utilisateur RAM Allen. Exemple de commande :
show grants for RAM$Bob@aliyun.com:Allen;Le résultat suivant est renvoyé :
[roles] worker Authorization Type: ACL [user/RAM$Bob@aliyun.com:Allen] A projects/test_project_a: CreateTable | CreateResource | CreateInstance | CreateFunction | List A projects/test_project_a/packages/project_test_b.datashare: Read Authorization Type: Policy [role/worker] A projects/test_project_a/tables/tb_*: Drop | Download
-
Interroger les autorisations basées sur les ACL pour un objet spécifié
-
Syntaxe
show acl for <object_name> [on type <object_type>]; -
Paramètres
Paramètre
Obligatoire
Description
object_name
Oui
Nom de l'objet pour lequel vous souhaitez interroger les autorisations basées sur les ACL.
-
Nom du projet : Connectez-vous à la console MaxCompute. Après avoir sélectionné la région dans le coin supérieur gauche, vous trouverez le nom du projet dans l'onglet Projects. Lorsque le type d'objet est « project », vous ne pouvez interroger les informations que pour le projet actuel.
-
Nom de la table : Exécutez
show tables;dans le client MaxCompute pour récupérer le nom de la table ou de la vue. -
Nom du modèle : Exécutez
show models;dans le client MaxCompute pour récupérer le nom du modèle. -
Nom de la ressource : Exécutez
list resources;dans le client MaxCompute pour récupérer le nom de la ressource. -
Nom de la fonction : Exécutez
list functions;dans le client MaxCompute pour récupérer le nom de la fonction. -
Nom de l'instance : Exécutez
show instances;dans le client MaxCompute pour récupérer l'ID de l'instance.
object_type
Non
Type de l'objet pour lequel vous souhaitez interroger les autorisations basées sur les ACL.
Valeurs valides :
Project : L'objet est un projet.
Table : L'objet est une table.
Model : L'objet est un modèle.
Resource : L'objet est un fichier de ressource.
Function : L'objet est une fonction.
Instance : L'objet est une instance.
Par défaut, si vous ne spécifiez pas
on type <object_type>, le type d'objet est Table. -
-
Résultat de la requête
Le résultat de la requête inclut les informations sur les rôles et les utilisateurs disposant d'autorisations sur l'objet spécifié, ainsi que les autorisations basées sur les ACL.
-
Exemple
Consultez les autorisations sur un objet dans le projet test_project_a.
-
Interrogez les autorisations sur le projet. Exemple de commande :
show acl for test_project_a on type project;Le résultat suivant est renvoyé :
Authorization Type: Implicit AG project_owner/ALIYUN$Bob@aliyun.com: All AG admin/ALIYUN$Bob@aliyun.com: All Authorization Type: ACL A role/worker(projects/test_project_a): CreateTable | CreateResource | CreateInstance | CreateFunction | List A role/worker1(projects/test_project_a): CreateTable | CreateResource | CreateInstance | CreateFunction | List A role/worker2(projects/test_project_a): CreateTable | CreateResource | CreateInstance | CreateFunction -
Interrogez les autorisations sur une table. Exemple de commande :
show acl for sale_detail on type table;Le résultat suivant est renvoyé :
Authorization Type: Implicit AG project_owner/ALIYUN$Bob@aliyun.com: All AG admin/ALIYUN$Bob@aliyun.com: All AG object_creator/ALIYUN$Bob@aliyun.com: All Authorization Type: ACL A user/RAM$Bob@aliyun.com:Allen(acs:odps:*:projects/test_project_a/tables/sale_detail/customer_id): Describe | Select A user/RAM$Bob@aliyun.com:Allen(acs:odps:*:projects/test_project_a/tables/sale_detail/shop_name): Describe | Select -
Interrogez les autorisations sur une ressource. Exemple de commande :
show acl for udtf.jar on type resource;Le résultat suivant est renvoyé :
Authorization Type: Implicit AG project_owner/ALIYUN$Bob@aliyun.com: All AG admin/ALIYUN$Bob@aliyun.com: All AG object_creator/ALIYUN$Bob@aliyun.com: All Authorization Type: ACL A user/RAM$Bob@aliyun.com:Allen(acs:odps:*:projects/test_project_a/resources/udtf.jar): Read | Write -
Interrogez les autorisations sur une fonction. Exemple de commande :
show acl for UDTFResource on type function;Le résultat suivant est renvoyé :
Authorization Type: Implicit AG project_owner/ALIYUN$Bob@aliyun.com: All AG admin/ALIYUN$Bob@aliyun.com: All AG object_creator/ALIYUN$Bob@aliyun.com: All Authorization Type: ACL A role/worker1(acs:odps:*:projects/test_project_a/registration/functions/udtfresource): Download A user/RAM$Bob@aliyun.com:Allen(acs:odps:*:projects/test_project_a/registration/functions/udtfresource): All -
Interrogez les autorisations sur une instance. Exemple de commande :
show acl for 20220105031923461ghu**** on type instance;Le résultat suivant est renvoyé :
Authorization Type: Implicit AG project_owner/ALIYUN$Bob@aliyun.com: All AG admin/ALIYUN$Bob@aliyun.com: All AG object_creator/ALIYUN$Bob@aliyun.com: All Authorization Type: ACL A user/RAM$Bob@aliyun.com:Allen(acs:odps:*:projects/test_project_a/instances/20220105031923461ghu****): All
-
Interroger toutes les tables de données hautement sensibles accessibles par l'utilisateur actuel
-
Syntaxe
show label grants; -
Résultat de la requête
Le résultat de la requête varie selon que l'utilisateur actuel est le propriétaire du projet :
User Label : niveau d'accès de l'utilisateur actuel.
TableName : nom de la table de données hautement sensible accessible par l'utilisateur actuel.
GrantedLabel : niveau de sensibilité des données auxquelles l'utilisateur actuel peut accéder.
Expires : date d'expiration des autorisations.
-
Exemple
Le compte Alibaba Cloud Bob@aliyun.com est le propriétaire du projet test_project_a. Allen est un utilisateur RAM ajouté au projet.
-
Si vous accédez au projet en utilisant le compte Alibaba Cloud Bob@aliyun.com, exécutez la commande
show label grants;. Le résultat suivant est renvoyé :User Label: 0 +--------------+--------------+--------------------------+ | TableName | GrantedLabel | Expires | +--------------+--------------+--------------------------+ | bank_data | 3 | 2022-07-04T16:30:47+0800 | +--------------+--------------+--------------------------+ | bank_data_pt | 4 | 2022-07-04T16:36:04+0800 | +--------------+--------------+--------------------------+ -
Si vous accédez au projet en utilisant l'utilisateur RAM Allen, exécutez la commande
show label grants;. Le résultat suivant est renvoyé :User Label: 1 +-------------+--------------+--------------------------+ | TableName | GrantedLabel | Expires | +-------------+--------------+--------------------------+ | sale_detail | 2 | 2022-01-09T11:43:27+0800 | +-------------+--------------+--------------------------+
-
Interroger les tables de données hautement sensibles d'un niveau spécifié accessibles par l'utilisateur actuel
-
Syntaxe
show label <level> grants; -
Paramètres
Paramètre
Obligatoire
Description
level
Oui
Niveau spécifié des données sensibles.
-
Résultat de la requête
Le résultat de la requête varie selon que l'utilisateur actuel est le propriétaire du projet :
User Label : niveau d'accès de l'utilisateur actuel.
TableName : nom de la table de données hautement sensible accessible par l'utilisateur actuel.
GrantedLabel : niveau de sensibilité des données auxquelles l'utilisateur actuel peut accéder.
Expires : date d'expiration des autorisations.
-
Exemple
Le compte Alibaba Cloud Bob@aliyun.com est le propriétaire du projet test_project_a. Allen est un utilisateur RAM ajouté au projet.
-
Si vous accédez au projet en utilisant le compte Alibaba Cloud Bob@aliyun.com, exécutez la commande suivante :
show label 3 grants;Le résultat suivant est renvoyé :
User Label: 0 +--------------+--------------+--------------------------+ | TableName | GrantedLabel | Expires | +--------------+--------------+--------------------------+ | bank_data | 3 | 2022-07-04T16:30:47+0800 | +--------------+--------------+--------------------------+ -
Si vous accédez au projet en utilisant l'utilisateur RAM Allen, exécutez la commande suivante :
show label 2 grants;Le résultat suivant est renvoyé :
User Label: 1 +-------------+--------------+--------------------------+ | TableName | GrantedLabel | Expires | +-------------+--------------+--------------------------+ | sale_detail | 2 | 2022-01-09T11:43:27+0800 | +-------------+--------------+--------------------------+
-
Interroger les tables de données hautement sensibles auxquelles un utilisateur spécifié peut accéder
-
Syntaxe
show label grants for user <user_name>; -
Paramètre
Parameter
Required
Description
user_name
Yes
Le nom de l'utilisateur dont vous souhaitez interroger les autorisations.
Vous pouvez exécuter la commande
list users;sur le client MaxCompute pour obtenir la liste des utilisateurs. -
Résultat de la requête
Le résultat de la requête varie selon que l'utilisateur actuel est ou non le propriétaire du projet :
User Label : le niveau d'accès de l'utilisateur actuel.
TableName : le nom de la table de données hautement sensible à laquelle l'utilisateur actuel peut accéder.
GrantedLabel : le niveau de sensibilité des données auquel l'utilisateur actuel peut accéder.
Expires : l'heure d'expiration des autorisations.
-
Exemple
Le compte Alibaba Cloud Bob@aliyun.com est le propriétaire du projet test_project_a. Allen est un utilisateur RAM ajouté au projet. Interrogez les tables de données hautement sensibles auxquelles l'utilisateur RAM Allen peut accéder. Exemple de commande :
show label grants for user RAM$Bob@aliyun.com:Allen;Le résultat suivant est renvoyé :
User Label: 2 +-----------+--------------+--------------------------+ | TableName | GrantedLabel | Expires | +-----------+--------------+--------------------------+ | bank_data | 3 | 2022-07-04T16:29:32+0800 | +-----------+--------------+--------------------------+
Interroger les tables de données hautement sensibles d'un niveau spécifié auxquelles un utilisateur spécifié peut accéder
-
Syntaxe
show label <level> grants for user <user_name>; -
Paramètres
Parameter
Required
Description
level
Yes
Le niveau spécifié des données sensibles.
user_name
Yes
Le nom de l'utilisateur dont vous souhaitez interroger les autorisations.
Vous pouvez exécuter la commande
list users;sur le client MaxCompute pour obtenir la liste des utilisateurs. -
Résultat de la requête
Le résultat de la requête varie selon que l'utilisateur actuel est ou non le propriétaire du projet :
User Label : le niveau d'accès de l'utilisateur actuel.
TableName : le nom de la table de données hautement sensible à laquelle l'utilisateur actuel peut accéder.
GrantedLabel : le niveau de sensibilité des données auquel l'utilisateur actuel peut accéder.
Expires : l'heure d'expiration des autorisations.
-
Exemple
Le compte Alibaba Cloud Bob@aliyun.com est le propriétaire du projet test_project_a. Allen est un utilisateur RAM ajouté au projet. Interrogez les tables de données hautement sensibles auxquelles l'utilisateur RAM Allen peut accéder. Exemple de commande :
show label 3 grants for user RAM$Bob@aliyun.com:Allen;Le résultat suivant est renvoyé :
User Label: 2 +-----------+--------------+--------------------------+ | TableName | GrantedLabel | Expires | +-----------+--------------+--------------------------+ | bank_data | 3 | 2022-07-04T16:29:32+0800 | +-----------+--------------+--------------------------+
Interroger les utilisateurs autorisés à accéder à une table de données sensibles spécifiée
-
Syntaxe
show label grants on table <table_name>; -
Paramètres
Parameter
Required
Description
table_name
Yes
Le nom de la table de données sensibles spécifiée.
Vous pouvez exécuter la commande
show tables;sur le client MaxCompute pour obtenir le nom de la table. -
Résultat de la requête
Le résultat de la requête varie selon que l'utilisateur actuel est ou non le propriétaire du projet :
Sensitive Label Range : la plage de niveaux de données sensibles de la table actuelle.
UserName : les utilisateurs et les rôles pouvant accéder à la table de données sensibles spécifiée.
GrantedLabel : le niveau de sensibilité des données auquel l'utilisateur peut accéder.
Expires : l'heure d'expiration des autorisations.
-
Exemple
Interrogez les utilisateurs pouvant accéder à la table de données hautement sensibles sale_detail dans le projet test_project_a. Exemple de commande :
show label grants on table sale_detail;Le résultat suivant est renvoyé :
Sensitive Label Range: [3, 4] +-------------------------------------------------+--------------+--------------------------+ | UserName | GrantedLabel | Expires | +-------------------------------------------------+--------------+--------------------------+ | worker | 4 | 2022-07-04T11:23:35+0800 | +-------------------------------------------------+--------------+--------------------------+ | RAM$Bob@aliyun.com:Allen | 4 | 2022-07-04T17:54:00+0800 | +-------------------------------------------------+--------------+--------------------------+
Interroger les utilisateurs d'un niveau spécifié pouvant accéder à une table de données sensibles spécifiée
-
Syntaxe
show label <level> grants on table <table_name>; -
Paramètres
Parameter
Required
Description
level
Yes
Le niveau spécifié des données sensibles.
table_name
Yes
Le nom de la table de données sensibles spécifiée.
Vous pouvez exécuter la commande
show tables;sur le client MaxCompute pour obtenir le nom de la table. -
Résultat de la requête
Le résultat de la requête varie selon que l'utilisateur actuel est ou non le propriétaire du projet :
Sensitive Label Range : la plage de niveaux de données sensibles de la table actuelle.
UserName : les utilisateurs et les rôles pouvant accéder à la table de données sensibles spécifiée.
GrantedLabel : le niveau de sensibilité des données auquel l'utilisateur peut accéder.
Expires : l'heure d'expiration des autorisations.
-
Exemple
Interrogez les utilisateurs pouvant accéder à la table de données hautement sensibles sale_detail dans le projet test_project_a. Exemple de commande :
show label 4 grants on table sale_detail;Le résultat suivant est renvoyé :
Sensitive Label Range: [3, 4] +-------------------------------------------------+--------------+--------------------------+ | UserName | GrantedLabel | Expires | +-------------------------------------------------+--------------+--------------------------+ | worker | 4 | 2022-07-04T11:23:35+0800 | +-------------------------------------------------+--------------+--------------------------+ | RAM$Bob@aliyun.com:Allen | 4 | 2022-07-04T17:54:00+0800 | +-------------------------------------------------+--------------+--------------------------+
Interroger les autorisations d'un utilisateur spécifié sur une table de données sensibles spécifiée
-
Syntaxe
show label [<label>] grants on table <table_name> for user <user_name>; -
Paramètres
Parameter
Required
Description
label
No
Le niveau spécifié des données sensibles.
table_name
Yes
Le nom de la table de données sensibles spécifiée.
Vous pouvez exécuter la commande
show tables;sur le client MaxCompute pour obtenir le nom de la table.user_name
Yes
Le nom de l'utilisateur dont vous souhaitez interroger les autorisations.
Vous pouvez exécuter la commande
list users;sur le client MaxCompute pour obtenir la liste des utilisateurs. -
Résultat de la requête
Le résultat de la requête varie selon que l'utilisateur actuel est ou non le propriétaire du projet :
User Label : le libellé du niveau d'accès de l'utilisateur actuel.
Column : les colonnes de la table de données sensibles spécifiée auxquelles l'utilisateur peut accéder.
GrantedLabel : le niveau de sensibilité des données auquel l'utilisateur peut accéder.
Expires : l'heure d'expiration des autorisations.
-
Exemple
Interrogez les données auxquelles l'utilisateur RAM Allen peut accéder dans la table sale_detail du projet test_project_a. Exemple de commande :
show label grants on table sale_detail for user RAM$Bob@aliyun.com:Allen;Le résultat suivant est renvoyé :
User Label: 2 +-------------+--------------+--------------------------+ | Column | GrantedLabel | Expires | +-------------+--------------+--------------------------+ | customer_id | 4 | 2022-07-04T17:54:00+0800 | +-------------+--------------+--------------------------+ | shop_name | 4 | 2022-07-04T17:54:00+0800 | +-------------+--------------+--------------------------+ | total_price | 4 | 2022-07-04T17:54:00+0800 | +-------------+--------------+--------------------------+
Interroger les niveaux de sensibilité de toutes les colonnes d'une table spécifiée
-
Syntaxe
describe <table_name>; -
Paramètres
Parameter
Required
Description
table_name
Yes
Le nom de la table de données sensibles spécifiée.
Vous pouvez exécuter la commande
show tables;sur le client MaxCompute pour obtenir le nom de la table. -
Résultat de la requête
Le résultat de la requête inclut TableLabel, MaxLabel et Label. TableLabel indique le niveau de sensibilité de la table actuelle. MaxLabel indique le niveau de sensibilité maximal des colonnes de la table. Label indique le niveau de sensibilité de chaque colonne.
-
Exemple
Interrogez les niveaux de sensibilité de la table sale_detail et des colonnes de cette table dans le projet test_project_a. Exemple de commande :
describe sale_detail;Le résultat suivant est renvoyé :
+------------------------------------------------------------------------------------+ | Owner: ALIYUN$Bob@aliyun.com | Project: project_test_a | | TableComment: | +------------------------------------------------------------------------------------+ | CreateTime: 2021-12-13 11:27:04 | | LastDDLTime: 2021-12-13 11:27:04 | | LastModifiedTime: 2021-12-13 11:27:26 | +------------------------------------------------------------------------------------+ | TableLabel: 3 | | MaxLabel: L4 | +------------------------------------------------------------------------------------+ | InternalTable: YES | Size: 784 | +------------------------------------------------------------------------------------+ | Native Columns: | +------------------------------------------------------------------------------------+ | Field | Type | Label | Comment | +------------------------------------------------------------------------------------+ | shop_name | string | 4 | | | customer_id | string | 4 | | | total_price | double | 3 | | +------------------------------------------------------------------------------------+ | Partition Columns: | +------------------------------------------------------------------------------------+ | sale_date | string | | | region | string | | +------------------------------------------------------------------------------------+
Interroger les autorisations sur un package spécifié
-
Syntaxe
show acl for <project_name>.<package_name> on type package; -
Paramètres
Parameter
Required
Description
project_name
Yes
Le nom du projet auquel appartient le package spécifié.
Vous pouvez exécuter la commande
describe package <package_name>;sur le client MaxCompute pour interroger le nom du projet auquel appartient le package.package_name
Yes
Le nom du package spécifié.
Vous pouvez exécuter la commande
show packages;sur le client MaxCompute pour interroger le nom du package spécifié. -
Résultat de la requête
Le résultat de la requête inclut les informations relatives aux rôles intégrés et aux utilisateurs disposant des autorisations de gestion des objets dans un projet MaxCompute, ainsi que les autorisations basées sur les listes de contrôle d'accès (ACL).
-
Exemple
Interrogez les autorisations sur le package datashare installé dans le projet test_project_b. Exemple de commande :
show acl for test_project_b.datashare on type package;Le résultat suivant est renvoyé :
Authorization Type: Implicit AG project_owner/ALIYUN$Bob@aliyun.com: All AG admin/ALIYUN$Bob@aliyun.com: All Authorization Type: ACL A user/RAM$Amy@aliyun.com:Bella(acs:odps:*:projects/test_project_b/packages/test_project_a.datashare): Read
Interroger les autorisations sur un objet d'un package spécifié
-
Syntaxe
show grants on <object_type> <object_name> privilegeproperties ("refobject"="true", "refproject"="<project_name>", "package"="<package _name>"); -
Paramètres
Parameter
Required
Description
object_type
Yes
Le type de l'objet du package sur lequel vous souhaitez interroger les autorisations.
Vous pouvez exécuter la commande
describe package <project_name>.<package_name>;sur le client MaxCompute pour interroger le type de l'objet dans le package.object_name
Yes
Le nom de l'objet du package sur lequel vous souhaitez interroger les autorisations.
Vous pouvez exécuter la commande
describe package <project_name>.<package_name>;sur le client MaxCompute pour interroger le nom de l'objet dans le package.project_name
Yes
Le nom du projet auquel appartient le package spécifié.
Vous pouvez exécuter la commande
describe package <project_name>.<package_name>;sur le client MaxCompute pour interroger le nom du projet auquel appartient le package.package_name
Yes
Le nom du package spécifié.
Vous pouvez exécuter la commande
show packages;sur le client MaxCompute pour interroger le nom du package spécifié. -
Résultat de la requête
Le résultat de la requête inclut les informations relatives aux rôles intégrés et aux utilisateurs disposant des autorisations de gestion d'un objet spécifié dans un projet MaxCompute, ainsi que les autorisations basées sur les listes de contrôle d'accès (ACL).
-
Exemple
Interrogez les autorisations sur la table sale_detail dans le package datashare installé dans le projet MaxCompute. Exemple de commande :
show grants on Table sale_detail privilegeproperties ("refobject"="true", "refproject"="test_project_a", "package"="datashare");Le résultat suivant est renvoyé :
Authorization Type: Implicit AG project_owner/: All Authorization Type: InstalledObjecACL [datashare] A user/RAM$Amy@aliyun.com:Bella(acs:odps:*:projects/test_project_a/tables/sale_detail): Select
Interroger les autorisations basées sur les libellés sur une table d'un package spécifié
-
Syntaxe
show label grants on table <table_name> privilegeproperties ("refobject"="true", "refproject"="<project_name>", "package"="<package_name>"); -
Paramètres
Parameter
Required
Description
table_name
Yes
Le nom de la table du package spécifié sur lequel vous souhaitez interroger les autorisations basées sur les libellés.
Vous pouvez exécuter la commande
describe package <project_name>.<package_name>;sur le client MaxCompute pour interroger le nom de la table dans le package.project_name
Yes
Le nom du projet auquel appartient le package spécifié.
Vous pouvez exécuter la commande
describe package <package_name>;sur le client MaxCompute pour interroger le nom du projet auquel appartient le package.package_name
Yes
Le nom du package spécifié.
Vous pouvez exécuter la commande
show packages;sur le client MaxCompute pour interroger le nom du package spécifié. -
Résultat de la requête
Le résultat de la requête varie selon que l'utilisateur actuel est ou non le propriétaire du projet :
Sensitive Label Range : la plage de niveaux de données sensibles de la table actuelle.
UserName : les utilisateurs et les rôles pouvant accéder à la table de données sensibles spécifiée.
GrantedLabel : le niveau de sensibilité des données auquel l'utilisateur peut accéder.
Expires : l'heure d'expiration des autorisations.
-
Exemple
Interrogez les autorisations basées sur les libellés sur la table sale_detail dans le package datashare installé dans le projet MaxCompute. Exemple de commande :
show label grants on table sale_detail privilegeproperties ("refobject"="true", "refproject"="test_project_a", "package"="datashare");Le résultat suivant est renvoyé :
Sensitive Label Range: [2, 4] +-------------------------------------------------+--------------+--------------------------+ | UserName | GrantedLabel | Expires | +-------------------------------------------------+--------------+--------------------------+ | RAM$Amy@aliyun.com:Bella | 3 | 2022-07-12T22:24:24+0800 | +-------------------------------------------------+--------------+--------------------------+