Data Management行級管控可實現所有已接入DMS的非NoSQL資料庫類型的統一行級許可權管控,可以解決不同人員只允許訪問不同資料行的問題。例如,銷售經理只能查看本人所負責地區的資料,不能查看全部地區資料。
前提條件
執行個體的管控模式為安全協同。更多資訊,請參見查看管控模式。
背景資訊
在對資料進行安全保護時,一般有縱向資料安全保護和橫向資料安全保護兩種需求:
縱向資料安全保護:通過欄位管控功能實現。
通過區分欄位的敏感等級,實現欄位的脫敏、半脫敏。更多資訊,請參見管理敏感性資料。
例如,負責統計分析工作的員工不能查看訂單中使用者的電子郵箱。
橫向資料安全保護:通過行級管控功能實現。
所有的行通過一個或若干個確定的值(管控值)進行區分,實現對行資料的管控。
例如,連鎖企業的訂單,只允許員工查看本人所負責地區的資料,不能看全部地區的資料。
約束和限制
僅支援關係型資料庫,如MySQL、PolarDB等。
僅支援安全協同模式的執行個體。
僅支援物理庫,邏輯庫暫未開放。
不具備所有行許可權的使用者,對行級管控表進行SQL查詢、訂正、刪除時,篩選條件有如下限制:
需要明確受管控欄位的篩選值,且篩選值在管控值列表內。
篩選條件會受到一些限制,例如:
Where條件僅支援
=
和in
兩種操作符。OR、XOR、邏輯非等運算操作均無法使用。
名詞解釋
管控表、管控欄位和管控值
行級管控表:需要進行行級管控的表。
管控欄位:行級管控表管控的欄位。
管控值:管控欄位的取值。
行許可權:行級管控許可權,通過管控表中欄位的值(管控值)管控行級資料。
單值行許可權:針對一個或多個管控值進行單獨管控。
所有行許可權:具備行級管控表中所有行的許可權。
配置組:具有相同管控值的管控欄位可以添加為一個配置組。
例如,表A和表B需要使用同樣的管控值進行行級管控,則可通過一個配置組同時對錶A和表B進行行級管控。
添加行級管控
您的使用者角色為管理員、DBA或安全性系統管理員。關於使用者角色,請參見查看我的系統角色。
- 登入Data Management 5.0。
單擊控制台左上方的表徵圖,選擇
。說明若您使用的是非極簡模式的控制台,在頂部功能表列中,選擇
。單擊頁面右上方的全域敏感性資料列表,進入敏感性資料列表頁面。
單擊行級管控頁簽。
單擊添加管控組,輸入管控組名稱。
添加行配置後,單擊添加。
單擊添加行配置。
搜尋並選擇目標資料庫。
選擇目標表和需要設定行級管控的欄位。
可選:單擊添加行配置,添加多個具有相同管控值的行級管控表。
成功添加行級管控後,在沒有申請行許可權前,您不能在SQL視窗中查看該目標表中的資料。
可選:申請單值行許可權,需要添加管控值。
在目標管控組的操作列中,單擊詳情。
在管控值詳情面板,單擊添加行值。
在導入行值對話方塊中,選擇是否追加行值。
是:在原有管控行值的基礎上增加新的行值。
否:將原有的管控行值清除,新增新的行值。
輸入行值內容。
說明您可以在一個行值中添加多個管控值,管控值用逗號分隔。申請該行值的許可權後,您會擁有行值中多個管控值的查詢許可權。
例如,公司只允許某員工查看北京和上海客戶的資料,可以輸入行值內容為
北京,上海
,員工申請該行值的許可權後,即可查看北京和上海地區的客戶資料。
申請開通行許可權
- 登入Data Management 5.0。
單擊控制台左上方的表徵圖,選擇
。說明若您使用的是非極簡模式的控制台,在頂部功能表列中,選擇
。頁面右上方,選擇 。
輸入資料庫名。
說明支援%模糊比對搜尋。
選擇行許可權範圍。
單值:可針對每一個行值申請許可權。
說明一個行值中可能包含多個管控值。如果您具有該行值的許可權,則擁有該行值中多個管控值的查詢、匯出或變更許可權。
一個管控值可能對應多行資料。如果您具有該管控值的行許可權,則擁有該管控表中多行資料的查詢、匯出或變更許可權。
所有:具備行級管控表的所有行許可權,可訪問整個行級管控表。
單擊搜尋。
選中目標行許可權,單擊。
說明行值為
-
,表示擁有所有行許可權。選中權限類別型,選擇期限,填寫入權限申請原因。
單擊提交申請。
待審批通過後,申請人可在SQL視窗中對管控表進行查詢、匯出或變更。
說明如需釋允許存取級管控許可權:
主動釋放:在查看我的許可權地區,查看、釋放本人名下的許可權。更多資訊,請參見查看我的許可權。
管理者釋放:在
頁面,目標使用者操作列的 中查看、釋放目標使用者的許可權。