動的データマスキングポリシーを管理するための SQL コマンド - Amazon Redshift

動的データマスキングポリシーを管理するための 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;