管理动态数据掩蔽策略
您可以执行以下操作:
-
要创建 DDM 策略,请使用 CREATE MASKING POLICY 命令。
以下是使用 SHA-2 哈希函数创建屏蔽策略的示例。
CREATE MASKING POLICY hash_credit WITH (credit_card varchar(256)) USING (sha2(credit_card + 'testSalt', 256));
-
要更改现有 DDM 政策,请使用 ALTER MASKING POLICY 命令。
以下是更改现有掩蔽政策的示例。
ALTER MASKING POLICY hash_credit USING (sha2(credit_card + 'otherTestSalt', 256));
-
要将表上的 DDM 策略附加到一个或多个用户或角色,请使用 ATTACH MASKING POLICY 命令。
下面是将屏蔽策略附加到列/角色对的示例。
ATTACH MASKING POLICY hash_credit ON credit_cards (credit_card) TO ROLE science_role PRIORITY 30;
PRIORITY 子句确定当多个策略附加到同一列时,哪个屏蔽策略适用于用户会话。例如,如果前面示例中的用户在同一信用卡列附加了另一个屏蔽策略,该策略的优先级为 20,则 science_role 的策略是适用的策略,因为它具有更高的优先级,即 30。
-
要将表上的 DDM 策略与一个或多个用户或角色分离,请使用 DETACH MASKING POLICY 命令。
下面是从列/角色对分离屏蔽策略的示例。
DETACH MASKING POLICY hash_credit ON credit_cards(credit_card) FROM ROLE science_role;
-
要从所有数据库删除 DDM 策略,请使用 DROP MASKING POLICY 命令。
以下是从所有数据库删除屏蔽策略的示例。
DROP MASKING POLICY hash_credit;