由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客户端执行 |
column_list | 否 | 当需要授予目标表或视图中指定列的访问权限时,需要配置该参数。单次授权可以指定多个列名,列名之间用英文逗号(,)分隔。 |
name | 是 | 指定用户或角色的名称。 您可以通过MaxCompute客户端执行 |
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显式授权权限。