GRANT LABEL

由Project Owner或具备Admin角色的用户为低级别用户授予访问高敏感等级数据的权限。

注意事项

显式授予用户的表的列Label权限,会覆盖显式授予用户的表的Label权限。

命令格式

grant Label <number> on table <table_name> [(<column_list>)] to {USER|ROLE} <name> [with exp <days>];

参数说明

参数名称

是否必填

说明

number

指定用户或角色可访问的最高数据敏感等级。

取值范围为0~9,与数据敏感等级标签相对应。

table_name

指定目标表或视图的名称。

您可以通过MaxCompute客户端执行show tables;命令获取表或视图名称。

column_list

当需要授予目标表或视图中指定列的访问权限时,需要配置该参数。单次授权可以指定多个列名,列名之间用英文逗号(,)分隔。

name

指定用户或角色的名称。

您可以通过MaxCompute客户端执行list users;list roles;命令获取用户账号或角色名称。

days

指定权限过期时间,单位为天。取值范围为:0~263-1。不指定该参数时,默认过期时间为180天。

使用示例

假设项目test_project_a中存在一张表sale_detail,shop_name、customer_id和total_price为表的列。Bob@aliyun.com是test_project_a的项目所有者。Allen为隶属于Bob的RAM用户,已被添加至项目test_project_a中。

为Allen显式授予访问高敏感级数据的权限,命令示例如下。

--Bob进入项目test_project_a。
use test_project_a;
--显式授权Allen访问sale_detail表中敏感度不超过3级的数据,授权有效期为4天。
grant Label 3 on table sale_detail to USER RAM$Bob@aliyun.com:Allen with exp 4; 
--查看Allen的显式授权结果。
show label grants on table sale_detail for USER RAM$Bob@aliyun.com:Allen;
--返回结果如下。
User Label: 1
+-------------+--------------+--------------------------+
| Column      | GrantedLabel | Expires                  |
+-------------+--------------+--------------------------+
| total_price | 3            | 2021-12-31T19:56:18+0800 |
+-------------+--------------+--------------------------+
--显式授权Allen访问sale_detail表的shop_name、customer_id和total_price列中敏感度不超过3级的数据,授权有效期为10天。
grant Label 3 on table sale_detail(shop_name, customer_id, total_price) to USER RAM$Bob@aliyun.com:Allen with exp 10;
--查看Allen的显式授权结果。
show label grants on table sale_detail for USER RAM$Bob@aliyun.com:Allen;
--返回结果如下。
User Label: 1
+-------------+--------------+--------------------------+
| Column      | GrantedLabel | Expires                  |
+-------------+--------------+--------------------------+
| customer_id | 3            | 2022-01-06T19:58:00+0800 |
+-------------+--------------+--------------------------+
| shop_name   | 3            | 2022-01-06T19:58:00+0800 |
+-------------+--------------+--------------------------+
| total_price | 3            | 2022-01-06T19:58:00+0800 |
+-------------+--------------+--------------------------+

相关命令

  • SET LABEL:为表或列数据设置敏感等级标签。

  • REVOKE:由Project Owner或具备Admin角色的用户撤销Label显式授权。

  • CLEAR EXPIRED GRANTS:清理过期Label显式授权权限。