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