動的データマスキングポリシーを管理するための SQL コマンド
次のアクションを実行して、動的データマスキングポリシーの作成、アタッチ、デタッチ、削除を行うことができます。
-
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 ポリシーをテーブルで 1 つ以上のユーザーまたはロールにアタッチするには、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 ポリシーをテーブルで 1 つ以上のユーザーまたはロールからデタッチするには、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;