2.1 Oracle Data Redactionスタート・ガイド
DBMS_REDACT
パッケージを使用して、Oracle Data Redactionポリシーを作成および有効化できます。スキーマ、オブジェクトおよび列を指定することで、リダクション・ポリシーを定義します。
-
スキーマ・レベルでは、オブジェクトの1つ以上の列をリダクションする必要がある正確なスキーマを指定します。
-
オブジェクト・レベルには、Orace Data Redactionポリシーが適用される表、ビューおよびマテリアライズド・ビューが含まれます。オブジェクトごとに最大1つのポリシーを適用できます。
-
列レベルには、リダクション関数の動作場所が含まれます。リダクション・ポリシーの作成時に、1つの列にリダクション関数を定義できます。その後、そのポリシーを編集して、必要に応じて、そのオブジェクト内の他の列を異なる関数でリダクションできます。
ノート:
様々なオブジェクトに対して同じポリシー名を指定できますが、ポリシーは別々であり無関係になります。ポリシーは一意でありオブジェクト所有者、オブジェクト名およびポリシー名の組合せに基づいています。異なるオブジェクトで同じポリシー名を再使用することにした場合、それは別個のポリシーであり、それには別個のポリシー式が含まれます。たとえば、次のプロシージャを使用して、HR.EMPLOYEES
表のSALARY
列にOracle Data Redactionポリシーを作成できます。
BEGIN
DBMS_REDACT.ADD_POLICY(
object_schema => 'hr',
object_name => 'employees',
column_name => 'salary',
policy_name => 'hr_emp_redact_comp_pol',
function_type => DBMS_REDACT.FULL,
expression => '1=1');
END;
この場合、DBMS_REDACT
パッケージのADD_POLICY
プロシージャを使用して、hr_emp_redact_comp_pol
というOracle Data Redactionポリシーを定義します。関数の型DBMS_REDACT.FULL
は、salary列で取得された値で完全データ・リダクションを実行することを指定します。つまり、デフォルトでは、数値データ型は出力テキストでゼロ(0)に置き換えられます。expression
パラメータは、TRUE
(1=1
)と評価された場合にリダクションを実行するようにポリシーを設定します。
Oracle Data Redactionには、データをリダクションする様々な方法があります。詳細は、この項を参照してください。