134 DBMS_REDACT
DBMS_REDACT
パッケージは、権限の低いユーザーやアプリケーションによって発行された問合せから戻されるデータをマスク(リダクション)できる、Oracle Data Redactionへのインタフェースを提供します。
この章のトピックは、次のとおりです:
参照:
-
機密データを保護するためのData Redactionの使用の詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
134.1 DBMS_REDACTの概要
Data Redactionを使用すると、アプリケーションのマスキング・ポリシーを定義できます。Oracle Data Redactionでは、アプリケーション内でユーザーのSELECT
問合せから戻されるデータをマスク(リダクション)するための機能が提供されます。マスキングはリアルタイムで発生します。データ・リダクション・ポリシーは、問合せ元のユーザーのSYS_CONTEXT
またはXS_SYS_CONTEXT
の値に応じて、そのユーザーに適用されます。このリダクション・プロセスでは、問合せ対象のデータが静的または不変である必要はなく、データ・セット全体をオフラインで同時にリダクションする必要もありません。Oracle Databaseでは、エントリ列のデータではなく、ユーザーの問合せで指定された行のデータのみがリダクションされます。リダクションは、データが問合せ元のユーザーまたはアプリケーションに戻される直前に発生します。
134.2 DBMS_REDACTのセキュリティ・モデル
問合せ元のユーザーにEXEMPT REDACTION POLICY
システム権限が付与されている場合、リダクションは実行されません。問合せ元のユーザーにEXEMPT REDACTION POLICY
システム権限が付与されていない場合、現行ユーザーの環境内で、ポリシーの式が評価されます。ポリシーの式がTRUE
と評価された場合はリダクションが実行され、そうでない場合は実行されません。
DBMS_REDACT
パッケージのサブプログラムを実行するには、そのパッケージのEXECUTE
権限が必要です。インタフェースに含まれるプロシージャは、現在のユーザーの権限で実行されます。
134.3 DBMS_REDACTの定数
DBMS_REDACT
パッケージは、パラメータ値の指定に使用するいくつかの定数を定義します。
表134-1 DBMS_REDACT.ADD_POLICYのfunction_typeパラメータの値
定数 | 値 | タイプ | 説明 |
---|---|---|---|
|
|
|
リダクションなし。 |
|
|
|
固定値へのリダクション。 |
|
|
|
リダクションされた値としてNULL値を戻します。 |
|
2 |
|
部分的なリダクション。列データの一部をリダクションします。 |
|
4 |
|
ランダム・リダクション。各問合せの結果は、異なるランダムな値になります。 |
|
|
|
正規表現ベースのリダクション。 |
|
|
|
正規表現を使用する列の幅を保持する正規表現に基づいたリダクション。Oracle OLE DBプロバイダ・インタフェースの |
表134-2 DBMS_REDACT.ALTER_POLICYのactionパラメータの値
定数 | 値 | タイプ | 説明 |
---|---|---|---|
|
|
|
リダクション・ポリシーに列を追加します。 |
|
|
|
リダクション・ポリシーから列を削除します。 |
|
|
|
リダクション・ポリシーの式を変更します(この式は |
|
|
|
リダクション・ポリシーに含まれる列を変更することによって、リダクションの |
|
|
|
リダクション・ポリシーの説明を設定します。 |
|
|
|
列に対して実行されるリダクションの説明を設定します。 |
134.4 DBMS_REDACTのプロシージャの使用
次の表に、リダクションする列のデータ・タイプに基づく、リダクション・ファンクションのタイプとそのパラメータの関係を示します。様々な書式文字列の例を提供することによって、文字列データ・タイプ(この場合は社会保障番号(SSN))やDATE
データ・タイプに対していくつかの一般的なリダクションを実行する方法を示します。また、数値データ・タイプに対するリダクションの様々な例も提供します。
表134-3 データ・リダクション・ファンクションのタイプ
function_type | function_parameters | 例 |
---|---|---|
|
- |
- |
|
- |
- |
|
次の5つのフィールドを含むカンマ区切りリスト(フィールドを区切るカンマの後にはスペースを入れません)。
表134-4を参照してください。 |
|
|
|
|
|
|
REDACT_PARTIAL_OUTPUT_FORMATのフィールド値 |
|
|
値 |
|
|
値 |
|
|
値 |
|
|
- |
|
次の3つのフィールドを含むカンマ区切りリスト(フィールドを区切るカンマの後にはスペースを入れません)。
表134-4を参照してください。 |
|
|
|
- |
|
次の5つのフィールドを含むリスト(フィールド間にスペースが入らないように連結されます)。
表134-4を参照してください。 |
|
|
|
- |
|
|
- |
|
- |
- |
表134-4 書式記述子と構成要素のフィールド名およびデリミタ
データ・タイプ | 部分リダクション用の書式記述子 |
---|---|
文字 |
|
数値 |
|
日時 |
|
134.5 DBMS_REDACTサブプログラムの要約
この表では、DBMS_REDACT
パッケージのサブプログラムをリストし、簡単に説明します。
表134-5 DBMS_REDACTパッケージのサブプログラム
サブプログラム | 説明 |
---|---|
表またはビューのデータ・リダクション・ポリシーを定義します。 |
|
表またはビューのデータ・リダクション・ポリシーを変更します。 |
|
データ・リダクション・ポリシー式をリダクションされた列に適用します。 |
|
データ・リダクション・ポリシー式を作成します |
|
データ・リダクション・ポリシーを無効化します |
|
データ・リダクション・ポリシーを削除します |
|
データ・リダクション・ポリシー式を削除します |
|
データ・リダクション・ポリシーを有効化します |
|
完全リダクションのデータ・リダクション・ポリシーでデフォルトで表示される値を変更します。 |
|
データ・リダクション・ポリシー式を更新します |
134.5.1 ADD_POLICYプロシージャ
このプロシージャは、表またはビューのデータ・リダクション・ポリシーを定義します。
構文
DBMS_REDACT.ADD_POLICY ( object_schema IN VARCHAR2 := NULL, object_name IN VARCHAR2, policy_name IN VARCHAR2, column_name IN VARCHAR2 := NULL, function_type IN BINARY_INTEGER := DBMS_REDACT.FULL, function_parameters IN VARCHAR2 := NULL, expression IN VARCHAR2, enable IN BOOLEAN := TRUE, regexp_pattern IN VARCHAR2 := NULL, regexp_replace_string IN VARCHAR2 := NULL, regexp_position IN BINARY_INTEGER := 1, regexp_occurrence IN BINARY_INTEGER := 0, regexp_match_parameter IN VARCHAR2 := NULL, policy_description IN VARCHAR2 := NULL, column_description IN VARCHAR2 := NULL);
パラメータ
表134-6 ADD_POLICYプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
表を所有するスキーマ。 |
|
データ・リダクション・ポリシーが追加される表またはビューの名前です。 |
|
ポリシー名。 |
|
(オプション)リダクション・ポリシーを適用する列の名前。複数の列をリダクションする必要がある場合は、ALTER_POLICYプロシージャを使用して列を追加します。 |
|
使用するリダクション・ファンクションのタイプ。使用可能な値は次のとおりです。 - - - - - - -
これらの値の意味の概要と使用例は、表134-1を参照してください。 |
|
リダクション・ファンクションのパラメータ。指定できる値は、提供された
- - - 部分文字マスキングのマスキング・パラメータ。文字データ・タイプの場合、カンマ区切りリストには次のフィールドが含まれます。
数値データ・タイプの場合、カンマ区切りリストには次のフィールドが含まれます。
日時データ・タイプの場合、この書式は、次の一連のフィールドを含む、間にスペースやカンマがない文字列になります。各フィールドは1つ以上の文字から構成され、フィールドの長さは、マスキングが必要であるかどうかによって異なります。1文字のフィールドは、日時値のその構成要素のリダクションは発生しないことを指定するために使用されます。それよりも長いフィールドは、日時値のその構成要素をリダクションした後の値として使用する、特定の時間または日付を示します。
たとえば、 部分文字と番号マスキング・ショートカットの詳細は、『Oracle Database Advanced Securityガイド』を参照してください。 |
|
表またはビューのデフォルトのブール式。この式を使用する場合、リダクションは、ポリシー式が 参照 次のファンクションがサポートされています。
これらのサポートされているファンクションの詳細は、『Oracle Database Advanced Securityガイド』を参照してください。 |
|
データ・リダクション・ポリシーを作成時に有効にするかどうかを決定するブール値。 デフォルト値の |
|
最大512バイトの正規表現パターン。
正規表現パターンの使用およびその例については、『Oracle Database SQL言語リファレンス』を参照してください。 |
|
この置換文字列(最大4000文字)には、最大500個の部分正規表現への後方参照を
|
|
1から始まる整数。検索の開始位置を指定します。
|
|
|
|
デフォルトの一致動作を変更します。'i'、'c'、'n'、'm'、'x'を組み合せた値を指定できます。
正規表現一致パラメータの使用およびその例については、『Oracle Database SQL言語リファレンス』を参照してください。 |
|
リダクション・ポリシーの説明です。 |
|
リダクションされた列の説明です。 |
例外
-
ORA-28060
: この列には、すでにデータ・リダクション・ポリシーが存在します。 -
ORA-28061
: このオブジェクトには、データ・リダクション・ポリシーを定義できません。 -
ORA-28062
: ポリシー式が長すぎます。 -
ORA-28063
: ポリシー式が空です。 -
ORA-28064
: リダクション・ファンクションのタイプが無効です。 -
ORA-28066
: 列column
は無効です。 -
ORA-28069
- このオブジェクトには、すでにデータ・リダクション・ポリシーが存在します。 -
ORA-28073
- 列column_name
にサポートされていないデータ型があります。 -
ORA-28074
- マスキング・パラメータのfield
field_name
が無効です。このフィールドには、次のいずれかを指定できます。
-
REDACT_PARTIAL_INPUT_FORMAT
-
REDACT_PARTIAL_OUTPUT_FORMAT
-
REDACT_PARTIAL_MASKCHAR
-
REDACT_PARTIAL_MASKFROM
-
REDACT_PARTIAL_MASKTO
-
REDACT_PARTIAL_DATE_MONTH
-
REDACT_PARTIAL_DATE_DAY
-
REDACT_PARTIAL_DATE_YEAR
-
REDACT_PARTIAL_DATE_HOUR
-
REDACT_PARTIAL_DATE_MINUTE
-
REDACT_PARTIAL_DATE_SECOND
-
-
ORA-28075
: ポリシー式にサポートされていない機能が含まれています -
ORA-28076
:SYS_SESSION_ROLES
に属性が指定されていません -
ORA-28077
: 指定された属性(attribute
)が最大長を超えています -
ORA-28078
: 正規表現パラメータがないか無効です -
ORA-28082
- パラメータparameterは無効です(ここで使用可能な値は、function_parameters
、column_description
、policy_name
およびpolicy_description
です)。 -
ORA-28085
- リダクションの入力と出力の長さが一致しません。
使用上のノート
ファンクション・タイプとファンクション・パラメータ、およびそれに関連する例については、「プロシージャの使用」を参照してください。
リダクションされた列に適用された名前付きデータ・リダクション・ポリシー式は、expression
パラメータで定義された式より優先されます。名前付きポリシー式の影響を受けるリダクションされた列を検索するには、REDACTION_EXPRESSIONS
データ・ディクショナリ・ビューを問い合せます。
例
部分リダクション・ポリシー:
BEGIN DBMS_REDACT.ADD_POLICY( object_schema => 'hr', object_name => 'employees', column_name => 'employee_id', policy_name => 'mask_emp_id_nums', function_type => DBMS_REDACT.PARTIAL, function_parameters => '7,1,5', expression => '1=1'); END;
完全リダクション・ポリシー:
BEGIN DBMS_REDACT.ADD_POLICY( object_schema => 'hr', object_name => 'employees', column_name => 'employee_id', policy_name => 'mask_emp_ids', function_type => DBMS_REDACT.FULL, expression => 'SYS_CONTEXT(''SYS_SESSION_ROLES'',''CLERK'') = ''FALSE'''); END;
134.5.2 ALTER_POLICYプロシージャ
このプロシージャは、表またはビューの既存のデータ・リダクション・ポリシーを変更します。
次の1つ以上の方法でポリシーを変更します。
-
ポリシーの式の変更。
-
指定した列のリダクション・タイプの変更。
-
指定した列のリダクション・ファンクションのパラメータの変更。
-
リダクション・ポリシーへの列の追加(リダクション・タイプと任意のパラメータを指定する必要がある)。
-
リダクション・ポリシーからの列の削除。
構文
DBMS_REDACT.ALTER_POLICY ( object_schema IN VARCHAR2 := NULL, object_name IN VARCHAR2, policy_name IN VARCHAR2, action IN BINARY_INTEGER := DBMS_REDACT.ADD_COLUMN, column_name IN VARCHAR2 := NULL, function_type IN BINARY_INTEGER := DBMS_REDACT.FULL, function_parameters IN VARCHAR2 := NULL, expression IN VARCHAR2, regexp_pattern IN VARCHAR2 := NULL, regexp_replace_string IN VARCHAR2 := NULL, regexp_position IN BINARY_INTEGER := 1, regexp_occurrence IN BINARY_INTEGER := 0, regexp_match_parameter IN VARCHAR2 := NULL, policy_description IN VARCHAR2 := NULL, column_description IN VARCHAR2 := NULL);
パラメータ
表134-7 ALTER_POLICYプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
表を所有するスキーマ。 |
|
データ・リダクション・ポリシーが変更される表またはビューの名前です。 |
|
30バイトに制限されているポリシーの名前です。 |
|
実行するアクション。詳細は、表134-2を参照してください。 |
|
(オプション)リダクション・ポリシーを適用する列の名前。 |
|
使用するリダクション・ファンクションのタイプ。使用可能な値は次のとおりです。 - - - - - - -
これらの値の意味の概要と使用例は、表134-1を参照してください。 |
|
リダクション・ファンクションのパラメータ。指定できる値は、提供された
- - -
数値データ・タイプの場合、カンマ区切りリストには次のフィールドが含まれます。
日時データ・タイプの場合、この書式は、次の一連のフィールドを含む、間にスペースやカンマがない文字列になります。各フィールドは1つ以上の文字から構成され、フィールドの長さは、マスキングが必要であるかどうかによって異なります。1文字のフィールドは、日時値のその構成要素のリダクションは発生しないことを指定するために使用されます。それよりも長いフィールドは、日時値のその構成要素をリダクションした後の値として使用する、特定の時間または日付を示します。
たとえば、 部分文字と番号マスキング・ショートカットの詳細は、『Oracle Database Advanced Securityガイド』を参照してください。 |
|
表またはビューのデフォルトのブール式。この式を使用する場合、リダクションは、ポリシー式が 次のファンクションがサポートされています。
|
|
最大512バイトの正規表現パターン。
正規表現パターンの使用およびその例については、『Oracle Database SQL言語リファレンス』を参照してください。 |
|
この置換文字列(最大4000文字)には、最大500個の部分正規表現への後方参照を
|
|
1から始まる整数。検索の開始位置を指定します。
|
|
|
|
デフォルトの一致動作を変更します。'i'、'c'、'n'、'm'、'x'を組み合せた値を指定できます。
正規表現一致パラメータの使用およびその例については、『Oracle Database SQL言語リファレンス』を参照してください。 |
|
リダクション・ポリシーの説明です。 |
|
リダクションされた列の説明です。 |
例外
-
ORA-28062
: ポリシー式が長すぎます。 -
ORA-28063
: ポリシー式が空です。 -
ORA-28064
: リダクション・ファンクションのタイプが無効です。 -
ORA-28066
: 列column
は無効です。 -
ORA-28067
: 列名がないか無効です -
ORA-28068
: オブジェクト"object
"には、データ・リダクション・ポリシーがありません。 -
ORA-28070
: 列"column
"には、データ・リダクション・ポリシーがありません。 -
ORA-28071
: アクションが無効です。 -
ORA-28072
: 指定されたポリシー名が正しくありません。 -
ORA-28073
- 列column_name
にサポートされていないデータ型があります。 -
ORA-28074
- マスキング・パラメータのfieldfield_name
が無効です。このフィールドには、次のいずれかを指定できます。
-
REDACT_PARTIAL_INPUT_FORMAT
-
REDACT_PARTIAL_OUTPUT_FORMAT
-
REDACT_PARTIAL_MASKCHAR
-
REDACT_PARTIAL_MASKFROM
-
REDACT_PARTIAL_MASKTO
-
REDACT_PARTIAL_DATE_MONTH
-
REDACT_PARTIAL_DATE_DAY
-
REDACT_PARTIAL_DATE_YEAR
-
REDACT_PARTIAL_DATE_HOUR
-
REDACT_PARTIAL_DATE_MINUTE
-
REDACT_PARTIAL_DATE_SECOND
-
-
ORA-28075
: ポリシー式にサポートされていない機能が含まれています。 -
ORA-28076
:SYS_SESSION_ROLES
に属性が指定されていません。 -
ORA-28077
: 指定された属性(attribute
)が最大長を超えています。 -
ORA-28078
: 正規表現パラメータがないか無効です。 -
ORA-28082
- パラメータparameterは無効です(ここで使用可能な値は、function_parameters
、column_description
、policy_name
およびpolicy_description
です)。 -
ORA-28085
- リダクションの入力と出力の長さが一致しません。
使用上のノート
ファンクション・タイプとファンクション・パラメータ、およびそれに関連する例については、「プロシージャの使用」を参照してください。
リダクションされた列に適用された名前付きデータ・リダクション・ポリシー式は、expression
パラメータで定義された式より優先されます。名前付きポリシー式の影響を受けるリダクションされた列を検索するには、REDACTION_EXPRESSIONS
データ・ディクショナリ・ビューを問い合せます。
例
BEGIN DBMS_REDACT.ALTER_POLICY( object_schema => 'HR', object_name => 'EMPLOYEES', policy_name => 'mask_emp_id_nums', action => DBMS_REDACT.DROP_COLUMN, column_name => 'EMAIL'); END;
134.5.3 APPLY_POLICY_EXPR_TO_COLプロシージャ
このプロシージャは、名前付きOracle Data Redactionポリシー式を、表またはビューからリダクションされた列に関連付けます。
構文
DBMS_REDACT.APPLY_POLICY_EXPR_TO_COL ( object_schema IN VARCHAR2 := NULL, object_name IN VARCHAR2, column_name IN VARCHAR2, policy_expression_name IN VARCHAR2 := NULL);
パラメータ
表134-8 APPLY_POLICY_EXPR_TO_COLプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
リダクションされた列を含むスキーマの名前。 |
|
リダクションされた列を含むオブジェクト(表またはビュー)の名前。 |
|
ポリシー式を適用するリダクションされた列の名前。 |
|
ポリシー式の名前。 |
例外
-
ORA-28068
: オブジェクト"object"には、データ・リダクション・ポリシーがありません。 -
ORA–28082
- パラメータparameterが無効です。 -
ORA-28092
- 値valueのパラメータparameterにエラーがあります。
使用上のノート
REDACTION_EXPRESSIONS
データ・ディクショナリ・ビューを問い合せることで、既存のデータ・リダクション・ポリシー式を検索できます。リダクションされた列を検索するには、REDACTION_COLUMNS
データ・ディクショナリ・ビューを問い合せます。
例
BEGIN DBMS_REDACT.APPLY_POLICY_EXPR_TO_COL( object_schema => 'OE', object_name => 'CUSTOMERS', column_name => 'INCOME_LEVEL', policy_expression_name => 'oe_redact_pol'); END;
134.5.4 CREATE_POLICY_EXPRESSIONプロシージャ
このプロシージャは、名前付きOracle Data Redactionポリシー式を作成します。
構文
DBMS_REDACT.CREATE_POLICY_EXPRESSION ( policy_expression_name IN VARCHAR2, expression IN VARCHAR2, policy_expression_description IN VARCHAR2 := NULL);
パラメータ
表134-9 CREATE_POLICY_EXPRESSIONプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
ポリシー式の名前。 |
|
ポリシー式の定義。 |
|
ポリシー式の説明。 |
例外
-
ORA–28082
- パラメータparameterが無効です。 -
ORA-28092
- 値valueのパラメータparameterにエラーがあります。
使用上のノート
ファンクション・タイプとファンクション・パラメータ、およびそれに関連する例については、「プロシージャの使用」を参照してください。
ポリシー式を作成した後、DBMS_REDACT.APPLY_POLICY_EXPR_TO_COL
プロシージャを実行して、リダクションされた表またはビュー列に関連付けることができます。既存のリダクションされた列を検索するには、REDACTION_COLUMNS
データ・ディクショナリ・ビューを問い合せます。
例
BEGIN DBMS_REDACT.CREATE_POLICY_EXPRESSION( policy_expression_name => 'oe_redact_pol', expression => 'SYS_CONTEXT(''USERENV'',''SESSION_USER'') = ''OE'''), policy_expression_description => 'Enables policy for user OE '); END;
134.5.5 DISABLE_POLICYプロシージャ
このプロシージャは、データ・リダクション・ポリシーを無効にします。
構文
DBMS_REDACT.DISABLE_POLICY ( object_schema IN VARCHAR2 := NULL, object_name IN VARCHAR2, policy_name IN VARCHAR2);
パラメータ
表134-10 DISABLE_POLICYプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
表またはビューを所有するスキーマ。 |
|
データ・リダクション・ポリシーが無効化される表またはビューの名前です。 |
|
無効にするポリシーの名前。 |
例外
-
ORA-28068
: オブジェクト"object
"には、データ・リダクション・ポリシーがありません。 -
ORA-28072
: 指定されたポリシー名が正しくありません。 -
ORA-28080
: ポリシーはすでに無効化されています。
例
BEGIN DBMS_REDACT.DISABLE_POLICY ( object_schema => 'hr', object_name => 'employees', policy_name => 'mask_emp_ids'); END;
134.5.6 DROP_POLICYプロシージャ
このプロシージャは、表またはビューからマスキング・ポリシーを削除することによって、データ・リダクション・ポリシーを削除します。
構文
DBMS_REDACT.DROP_POLICY ( object_schema IN VARCHAR2 := NULL, object_name IN VARCHAR2, policy_name IN VARCHAR2);
パラメータ
表134-11 DROP_POLICYプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
表またはビューを所有するスキーマ。 |
|
データ・リダクション・ポリシーが削除される表またはビューの名前です。 |
|
削除するポリシーの名前。 |
例外
-
ORA-28068
: オブジェクト"object
"には、データ・リダクション・ポリシーがありません。 -
ORA-28072
: 指定されたポリシー名が正しくありません。
例
BEGIN DBMS_REDACT.DROP_POLICY ( object_schema => 'hr', object_name => 'employees', policy_name => 'mask_emp_ids'); END;
134.5.7 DROP_POLICY_EXPRESSIONプロシージャ
このプロシージャは、名前付きポリシー式を削除します。
構文
DBMS_REDACT.DROP_POLICY_EXPRESSION ( policy_expression_name IN VARCHAR2);
パラメータ
表134-12 DROP_POLICY_EXPRESSIONプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
ポリシー式の名前。 |
例外
-
ORA–28082
- パラメータparameterが無効です。 -
ORA-28092
- 値valueのパラメータparameterにエラーがあります。
使用上のノート
REDACTION_EXPRESSIONS
データ・ディクショナリ・ビューを問い合せることで、既存のデータ・リダクション・ポリシー式を検索できます。
例
BEGIN DBMS_REDACT.DROP_POLICY_EXPRESSION( policy_expression_name => 'oe_redact_pol'); END;
134.5.8 ENABLE_POLICYプロシージャ
このプロシージャは、データ・リダクション・ポリシーを再度有効にします。
構文
DBMS_REDACT.ENABLE_POLICY ( object_schema IN VARCHAR2 := NULL, object_name IN VARCHAR2, policy_name IN VARCHAR2);
パラメータ
表134-13 ENABLE_POLICYプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
表またはビューを所有するスキーマ。 |
|
データ・リダクション・ポリシーが有効化される表またはビューの名前です。 |
|
有効にするポリシーの名前。 |
例外
-
ORA-28068
: オブジェクト"object
"には、データ・リダクション・ポリシーがありません。 -
ORA-28071
: アクションが無効です。 -
ORA-28072
: 指定されたポリシー名が正しくありません。 -
ORA-28079
: ポリシーはすでに有効化されています。
例
BEGIN DBMS_REDACT.ENABLE_POLICY ( object_schema => 'hr', object_name => 'employees', policy_name => 'mask_emp_ids'); END;
134.5.9 UPDATE_FULL_REDACTION_VALUESプロシージャ
このプロシージャは、完全リダクションのデータ・リダクション・ポリシーでデフォルトで表示される値を変更します。
構文
DBMS_REDACT.UPDATE_FULL_REDACTION_VALUES ( number_val IN NUMBER := NULL, binfloat_val IN BINARY_FLOAT := NULL, bindouble_val IN BINARY_DOUBLE := NULL, char_val IN CHAR := NULL, varchar_val IN VARCHAR2 := NULL, nchar_val IN NCHAR := NULL, nvarchar_val IN NVARCHAR2 := NULL, date_val IN DATE := NULL, ts_val IN TIMESTAMP := NULL, tswtz_val IN TIMESTAMP WITH TIME ZONE := NULL, blob_val IN BLOB := NULL, clob_val IN CLOB := NULL, nclob_val IN NCLOB NULL);
パラメータ
表134-14 UPDATE_FULL_REDACTION_VALUESプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
例外
ORA-28082
- パラメータparameterは無効です(ここで使用可能な値は、char_val
、nchar_val
、varchar_val
およびnvarchar_val
です)。
134.5.10 UPDATE_POLICY_EXPRESSIONプロシージャ
このプロシージャは、名前付きOracle Data Redactionポリシー式を更新します。
構文
DBMS_REDACT.UPDATE_POLICY_EXPRESSION ( policy_expression_name IN VARCHAR2, expression IN VARCHAR2, policy_expression_description IN VARCHAR2 := NULL);
パラメータ
表134-15 UPDATE_POLICY_EXPRESSIONプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
ポリシー式の名前。 |
|
ポリシー式の定義。 |
|
ポリシー式の説明。 |
例外
-
ORA–28082
- パラメータparameterが無効です。 -
ORA-28092
- 値valueのパラメータparameterにエラーがあります。
使用上のノート
REDACTION_EXPRESSIONS
データ・ディクショナリ・ビューを問い合せることで、既存のポリシー式を検索できます。
例
BEGIN DBMS_REDACT.UPDATE_POLICY_EXPRESSION( policy_expression_name => 'oe_redact_pol', expression => 'SYS_CONTEXT(''USERENV'',''SESSION_USER'') != ''OE'''), policy_expression_description => 'Disables policy for user OE '); END;