全部產品
Search
文件中心

MaxCompute:GRANT LABEL

更新時間:Jun 19, 2024

由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顯式授權許可權。