この章の内容は次のとおりです。
DBMS_MACADM
パッケージのプロシージャおよびファンクションを使用すると、一般にOracle Database Vault Administratorで構成されるレルム、ファクタ、ルール・セット、コマンド・ルール、セキュア・アプリケーション・ロールおよびOracle Label Securityポリシーを構成するアプリケーションを作成できます。
DBMS_MACADM
パッケージは、DV_ADMIN
ロールまたはDV_OWNER
ロールを付与されているユーザーのみが使用できます。
DBMS_MACADM
パッケージのプロシージャおよびファンクションで使用されるパラメータの多くでは、DBMS_MACUTL
パッケージで使用可能な定数を使用できます。詳細は、「DBMS_MACUTLの定数」を参照してください。
また、Oracle Database Vaultには、DBMS_MACADM
パッケージとともに使用できる一連のPL/SQLインタフェースが用意されています。詳細は、第15章「Oracle Database Vault PL/SQLインタフェースの使用方法」を参照してください。
表12-1に、レルムの構成に使用できるDBMS_MACADM
パッケージのプロシージャを示します。これらのプロシージャで使用できる定数の詳細は、表14-1を参照してください。
レルムの詳細は、第4章「レルムの構成」を参照してください。また、レルム・プロシージャとともに使用できる一連の汎用ユーティリティ・プロシージャは、第14章「DBMS_MACUTLパッケージの使用方法」を参照してください。
表12-1 DBMS_MACADMのレルム構成プロシージャ
プロシージャ | 説明 |
---|---|
|
|
|
|
|
レルムを作成します。 |
|
レルムにアクセスするためのユーザーまたはロールの認可を削除します。 |
DELETE_OBJECT_FROM_REALMプロシージャ |
レルム保護から一連のオブジェクトを削除します。 |
|
レルムを削除します。 |
|
レルムおよび関連するDatabase Vault構成情報を削除します。 |
|
レルムの名前を変更します。名前の変更は、そのレルムが使用されているすべての箇所に反映されます。 |
|
|
|
ADD_AUTH_TO_REALM
プロシージャは、所有者または参加者としてレルムにアクセスする権限をユーザーまたはロールに付与します。レルム認可の詳細は、「レルム認可の定義」を参照してください。
オプションで、認可に進む前にチェックする必要のあるルール・セットを指定できます。
構文
DBMS_MACADM.ADD_AUTH_TO_REALM( realm_name IN VARCHAR2, grantee IN VARCHAR2, rule_set_name IN VARCHAR2, auth_options IN NUMBER);
パラメータ
表12-2 ADD_AUTH_TO_REALMのパラメータ
パラメータ | 説明 |
---|---|
|
レルム名。 現行のデータベース・インスタンスで既存のレルムを検索するには、「DVSYS.DBA_DV_REALMビュー」で説明されている |
|
所有者または参加者として認可するユーザーまたはロール名。 現行のデータベース・インスタンスで既存のユーザーおよびロールを検索するには、『Oracle Databaseリファレンス』で説明されている 特定のユーザーまたはロールの認可を検索するには、「DVSYS.DBA_DV_REALM_AUTHビュー」で説明されている 権限管理で使用されている既存のセキュア・アプリケーション・ロールを検索するには、 |
|
オプションです。認可の前にチェックするルール・セット。ルール・セットの評価が 使用可能なルール・セットを検索するには、「DVSYS.DBA_DV_RULE_SETビュー」で説明されている |
|
オプションです。レルムを認可する次のオプションのうち、1つを指定します。
参加者および所有者の詳細は、「レルム認可の定義」を参照してください。 |
例
次の例では、ユーザーSYSADM
をパフォーマンス統計レルムの参加者として認可します。デフォルトではユーザーが参加者として認可されるため、auth_options
パラメータは省略できます。
BEGIN DBMS_MACADM.ADD_AUTH_TO_REALM( realm_name => 'Performance Statistics Realm', grantee => 'SYSADM'); END; /
次の例では、ユーザーSYSADM
をパフォーマンス統計レルムの所有者として設定します。
BEGIN DBMS_MACADM.ADD_AUTH_TO_REALM( realm_name => 'Performance Statistics Realm', grantee => 'SYSADM', auth_options => DBMS_MACUTL.G_REALM_AUTH_OWNER); END; /
次の例では、ユーザーSYSADM
をパフォーマンス統計レルムの所有者として認可する前に、構成アクセス・チェック・ルール・セットをトリガーします。
BEGIN DBMS_MACADM.ADD_AUTH_TO_REALM( realm_name => 'Performance Statistics Realm', grantee => 'SYSADM', rule_set_name => 'Check Conf Access', auth_options => DBMS_MACUTL.G_REALM_AUTH_OWNER); END; /
ADD_OBJECT_TO_REALM
プロシージャは、レルム保護に一連のオブジェクトを登録します。
構文
DBMS_MACADM.ADD_OBJECT_TO_REALM( realm_name IN VARCHAR2, object_owner IN VARCHAR2, object_name IN VARCHAR2, object_type IN VARCHAR2);
パラメータ
表12-3 ADD_OBJECT_TO_REALMのパラメータ
パラメータ | 説明 |
---|---|
|
レルム名。 現行のデータベース・インスタンスで既存のレルムを検索するには、「DVSYS.DBA_DV_REALMビュー」で説明されている |
|
レルムに追加するオブジェクトの所有者。ロールをレルムに追加する場合、ロールに所有者はいないため、ロールのオブジェクト所有者は 使用可能なユーザーを検索するには、『Oracle Databaseリファレンス』で説明されている 特定のユーザーまたはロールの認可を検索するには、「DVSYS.DBA_DV_REALM_AUTHビュー」で説明されている |
|
オブジェクト名。(ワイルドカード%を使用できます。ワイルドカード%の例外は、「レルム・セキュア・オブジェクトの作成」の「オブジェクト名」を参照してください。) 使用可能なオブジェクトを検索するには、『Oracle Databaseリファレンス』で説明されている 既存のレルムによって保護されているオブジェクトを検索するには、「DVSYS.DBA_DV_REALM_OBJECTビュー」で説明されている |
|
|
例
BEGIN DBMS_MACADM.ADD_OBJECT_TO_REALM( realm_name => 'Performance Statistics Realm', object_owner => '%', object_name => 'GATHER_SYSTEM_STATISTICS', object_type => 'ROLE'); END; /
CREATE_REALM
プロシージャはレルムを作成します。レルムを作成した後で、次のプロシージャを使用してレルム定義を完了します。
ADD_OBJECT_TO_REALM
プロシージャは、レルムに1つ以上のオブジェクトを登録します。
ADD_AUTH_TO_REALM
プロシージャは、レルムに対してユーザーまたはロールを認可します。
構文
DBMS_MACADM.CREATE_REALM( realm_name IN VARCHAR2, description IN VARCHAR2, enabled IN VARCHAR2, audit_options IN NUMBER);
パラメータ
表12-4 CREATE_REALMのパラメータ
パラメータ | 説明 |
---|---|
|
レルム名(大/小文字混在で最大90文字)。 現行のデータベース・インスタンスで既存のレルムを検索するには、「DVSYS.DBA_DV_REALMビュー」で説明されている |
|
レルムの目的の説明(大/小文字混在で最大1024文字)。 |
|
|
|
レルムを監査する次のオプションのうち、1つを指定します。
|
例
BEGIN DBMS_MACADM.CREATE_REALM( realm_name => 'Performance Statistics Realm', description => 'Realm to measure performance', enabled => DBMS_MACUTL.G_YES, audit_options => DBMS_MACUTL.G_REALM_AUDIT_FAIL + DBMS_MACUTL.G_REALM_AUDIT_SUCCESS); END; /
DELETE_AUTH_FROM_REALM
プロシージャは、レルムにアクセスするためのユーザーまたはロールの認可を削除します。
構文
DBMS_MACADM.DELETE_AUTH_FROM_REALM( realm_name IN VARCHAR2, grantee IN VARCHAR2);
パラメータ
表12-5 DELETE_AUTH_FROM_REALMのパラメータ
パラメータ | 説明 |
---|---|
|
レルム名。 現行のデータベース・インスタンスで既存のレルムを検索するには、「DVSYS.DBA_DV_REALMビュー」で説明されている |
|
ユーザーまたはロール名。 特定のユーザーまたはロールの認可を検索するには、「DVSYS.DBA_DV_REALM_AUTHビュー」で説明されている |
例
BEGIN DBMS_MACADM.DELETE_AUTH_FROM_REALM( realm_name => 'Performance Statistics Realm', grantee => 'SYS'); END; /
DELETE_OBJECT_FROM_REALM
プロシージャは、レルム保護から一連のオブジェクトを削除します。
構文
DBMS_MACADM.DELETE_OBJECT_FROM_REALM( realm_name IN VARCHAR2, object_owner IN VARCHAR2, object_name IN VARCHAR2, object_type IN VARCHAR2);
パラメータ
表12-6 DELETE_OBJECT_FROM_REALMのパラメータ
パラメータ | 説明 |
---|---|
|
レルム名。 現行のデータベース・インスタンスで既存のレルムを検索するには、「DVSYS.DBA_DV_REALMビュー」で説明されている |
|
レルムに追加されたオブジェクトの所有者。 使用可能なユーザーを検索するには、『Oracle Databaseリファレンス』で説明されている |
|
オブジェクト名。(ワイルドカード%を使用できます。ワイルドカード%の例外は、「レルム・セキュア・オブジェクトの作成」の「オブジェクト名」を参照してください。) 既存のレルムによって保護されているオブジェクトを検索するには、「DVSYS.DBA_DV_REALM_OBJECTビュー」で説明されている |
|
|
例
BEGIN DBMS_MACADM.DELETE_OBJECT_FROM_REALM( realm_name => 'Performance Statistics Realm', object_owner => 'SYS', object_name => 'GATHER_SYSTEM_STATISTICS', object_type => 'ROLE'); END; /
DELETE_REALM
プロシージャはレルムを削除しますが、その関連オブジェクトおよび認可は削除しません。レルムを削除する前に、DVSYS.DBA_DV_REALM_OBJECT
ビューに問い合せて関連オブジェクトを検索できます。レルム関連のオブジェクトのリストを確認するには、DVSYS.DBA_DV_REALM
ビューに問い合せます。その認可を確認するには、DVSYS.DBA_DV_REALM_AUTH
に問い合せます。これらのビューについては、第16章「Oracle Database Vaultのデータ・ディクショナリ・ビュー」で説明します。
関連付けられているオブジェクトおよび認可に加えてレルムを削除する場合は、「DELETE_REALM_CASCADEプロシージャ」を参照してください。
構文
DBMS_MACADM.DELETE_REALM( realm_name IN VARCHAR2);
パラメータ
表12-7 DELETE_REALMのパラメータ
パラメータ | 説明 |
---|---|
|
レルム名。 現行のデータベース・インスタンスで既存のレルムを検索するには、「DVSYS.DBA_DV_REALMビュー」で説明されている |
例
EXEC DBMS_MACADM.DELETE_REALM('Performance Statistics Realm');
DELETE_REALM_CASCADE
プロシージャは、認可されているユーザー(DVSYS.DBA_DV_REALM_AUTH
ビュー)および保護されているオブジェクト(DVSYS.DBA_DV_REALM_OBJECT
ビュー)を指定する関連Database Vault構成情報を含め、レルムを削除します。実際のデータベース・オブジェクトまたはユーザーは削除されません。レルム関連のオブジェクトのリストを確認するには、DVSYS.DBA_DV_REALM
ビューに問い合せます。その認可を確認するには、DVSYS.DBA_DV_REALM_AUTH
に問い合せます。どちらについても第16章「Oracle Database Vaultのデータ・ディクショナリ・ビュー」で説明します。
構文
DBMS_MACADM.DELETE_REALM_CASCADE( realm_name IN VARCHAR2);
パラメータ
表12-8 DELETE_REALM_CASCADEのパラメータ
パラメータ | 説明 |
---|---|
|
レルム名。 現行のデータベース・インスタンスで既存のレルムを検索するには、「DVSYS.DBA_DV_REALMビュー」で説明されている |
例
EXEC DBMS_MACADM.DELETE_REALM_CASCADE('Performance Statistics Realm');
RENAME_REALM
プロシージャは、レルムの名前を変更します。名前の変更は、そのレルムが使用されているすべての箇所に反映されます。
構文
DBMS_MACADM.RENAME_REALM( realm_name IN VARCHAR2, new_name IN VARCHAR2);
パラメータ
表12-9 RENAME_REALMのパラメータ
パラメータ | 説明 |
---|---|
|
現在のレルム名。 現行のデータベース・インスタンスで既存のレルムを検索するには、「DVSYS.DBA_DV_REALMビュー」で説明されている |
|
新しいレルム名(大/小文字混在で最大90文字)。 |
例
BEGIN DBMS_MACADM.RENAME_REALM( realm_name => 'Performance Statistics Realm', new_name => 'Sector 2 Performance Statistics Realm'); END; /
構文
DBMS_MACADM.UPDATE_REALM( realm_name IN VARCHAR2, description IN VARCHAR2, enabled IN VARCHAR2, audit_options IN NUMBER DEFAULT NULL);
パラメータ
表12-10 UPDATE_REALMのパラメータ
パラメータ | 説明 |
---|---|
|
レルム名。 現行のデータベース・インスタンスで既存のレルムを検索するには、「DVSYS.DBA_DV_REALMビュー」で説明されている |
|
レルムの目的の説明(大/小文字混在で最大1024文字)。 |
|
|
|
レルムを監査する次のオプションのうち、1つを指定します。
|
例
BEGIN DBMS_MACADM.UPDATE_REALM( realm_name => 'Sector 2 Performance Statistics Realm', description => 'Realm to measure performance for Sector 2 applications', enabled => DBMS_MACUTL.G_YES, audit_options => DBMS_MACUTL.G_REALM_AUDIT_FAIL + G_REALM_AUDIT_SUCCESS); END; /
UPDATE_REALM_AUTH
プロシージャは、レルムにアクセスするためのユーザーまたはロールの認可を更新します。
構文
DBMS_MACADM.UPDATE_REALM_AUTH( realm_name IN VARCHAR2, grantee IN VARCHAR2, rule_set_name IN VARCHAR2, auth_options IN NUMBER);
パラメータ
表12-11 UPDATE_REALM_AUTHのパラメータ
パラメータ | 説明 |
---|---|
|
レルム名。 現行のデータベース・インスタンスで既存のレルムを検索するには、「DVSYS.DBA_DV_REALMビュー」で説明されている |
|
ユーザーまたはロール名。 使用可能なユーザーおよびロールを検索するには、『Oracle Databaseリファレンス』で説明されている 特定のユーザーまたはロールの認可を検索するには、「DVSYS.DBA_DV_REALM_AUTHビュー」で説明されている 権限管理で使用されている既存のセキュア・アプリケーション・ロールを検索するには、「DVSYS.DBA_DV_ROLEビュー」で説明されている |
|
認可の前にチェックするオプションのルール・セット。ルール・セットの評価が 使用可能なルール・セットを検索するには、 |
|
オプションです。レルムを認可する次のオプションのうち、1つを指定します。
|
例
BEGIN DBMS_MACADM.UPDATE_REALM_AUTH( realm_name => 'Sector 2 Performance Statistics Realm', grantee => 'SYSADM', rule_set_name => 'Check Conf Access', auth_options => DBMS_MACUTL.G_REALM_AUTH_OWNER); END; /
表12-12に、ルール・セットの構成に使用できるDBMS_MACADM
パッケージのプロシージャを示します。
関連項目:
|
表12-12 DBMS_MACADMのルール・セット構成プロシージャ
プロシージャ | 説明 |
---|---|
|
ルールをルール・セットに追加します。 |
|
ルールを作成します。 |
|
ルール・セットを作成します。 |
|
ルールを削除します。 |
DELETE_RULE_FROM_RULE_SETプロシージャ |
ルールをルール・セットから削除します。 |
|
ルール・セットを削除します。 |
|
ルールの名前を変更します。名前の変更は、そのルールが使用されているすべての箇所に反映されます。 |
|
ルール・セットの名前を変更します。名前の変更は、そのルール・セットが使用されているすべての箇所に反映されます。 |
|
ルールを同期化します。 |
|
ルールを更新します。 |
|
ルール・セットを更新します。 |
ADD_RULE_TO_RULE_SET
プロシージャは、ルールをルール・セットに追加し、ルール・セットの評価時にルールをチェックするかどうかを指定できるようにします。
構文
DBMS_MACADM.ADD_RULE_TO_RULE_SET( rule_set_name IN VARCHAR2, rule_name IN VARCHAR2, rule_order IN NUMBER, enabled IN VARCHAR2);
パラメータ
表12-13 ADD_RULE_TO_RULE_SETのパラメータ
パラメータ | 説明 |
---|---|
|
ルール・セット名。 現行のデータベース・インスタンスで既存のルール・セットを検索するには、「DVSYS.DBA_DV_RULE_SETビュー」で説明されている |
|
ルール・セットに追加するルール。 既存のルールを検索するには、「DVSYS.DBA_DV_RULEビュー」で説明されている ルール・セットに関連付けられているルールを検索するには、「DVSYS.DBA_DV_RULE_SET_RULEビュー」で説明されている |
|
このリリースには適用されませんが、 |
|
オプションです。ルール・セットの評価時にルールをチェックする必要があるかどうかを判断します。可能な値は次のとおりです。
次の
詳細は、表14-1を参照してください。 |
例
次の例では、ルールをルール・セットに追加し、enabled
パラメータを省略して、ルール・セットの評価時に自動的にルール・チェックが有効化されるようにします。
BEGIN DBMS_MACADM.ADD_RULE_TO_RULE_SET( rule_set_name => 'Limit_DBA_Access', rule_name => 'Restrict DROP TABLE operations', rule_order => 1); END; /
次の例では、ルールをルール・セットに追加しますが、ルール・チェックを無効化します。
BEGIN DBMS_MACADM.ADD_RULE_TO_RULE_SET( rule_set_name => 'Limit_DBA_Access', rule_name => 'Check UPDATE operations', rule_order => 1, enabled => DBMS_MACUTL.G_NO); END; /
CREATE_RULE
プロシージャはルールを作成します。ルールの作成後は、ルール・セットに追加できます。
構文
DBMS_MACADM.CREATE_RULE( rule_name IN VARCHAR2, rule_expr IN VARCHAR2);
パラメータ
表12-14 CREATE_RULEのパラメータ
パラメータ | 説明 |
---|---|
|
ルール名(大/小文字混在で最大90文字)。空白を使用できます。 現行のデータベース・インスタンスで既存のルールを検索するには、「DVSYS.DBA_DV_RULEビュー」で説明されている ルール・セットに関連付けられているルールを検索するには、「DVSYS.DBA_DV_RULE_SET_RULEビュー」で説明されている |
|
PL/SQL 式に引用符が含まれる場合、二重引用符は使用しないでください。その場合は、2つの一重引用符を使用します。式全体を一重引用符で囲んでください。次に例を示します。 'TO_CHAR(SYSDATE,''HH24'') = ''12''' ルール式の詳細は、「新規ルールの作成」を参照してください。 |
例
BEGIN DBMS_MACADM.CREATE_RULE( rule_name => 'Check UPDATE operations', rule_expr =>'SYS_CONTEXT(''USERENV'',''SESSION_USER'') = ''SYSADM'''); END; /
CREATE_RULE_SET
プロシージャはルール・セットを作成します。ルール・セットを作成した後で、CREATE_RULE
およびADD_RULE_TO_RULE_SET
プロシージャを使用してルールを作成し、ルール・セットに追加します。
構文
DBMS_MACADM.CREATE_RULE_SET( rule_set_name IN VARCHAR2, description IN VARCHAR2, enabled IN VARCHAR2, eval_options IN NUMBER, audit_options IN NUMBER, fail_options IN NUMBER, fail_message IN VARCHAR2, fail_code IN NUMBER, handler_options IN NUMBER, handler IN VARCHAR2, is_static IN BOOLEAN DEFAULT FALSE);
パラメータ
表12-15 CREATE_RULE_SETのパラメータ
パラメータ | 説明 |
---|---|
|
ルール・セット名(大/小文字混在で最大90文字)。空白を使用できます。 現行のデータベース・インスタンスで既存のルール・セットを検索するには、「DVSYS.DBA_DV_RULE_SETビュー」で説明されている |
|
ルール・セットの目的の説明(大/小文字混在で最大1024文字)。 |
|
|
|
ルール・セットに複数のルールを割り当てる場合は、次の設定のいずれかを入力します。
|
|
次の設定のいずれかを選択します。
詳細は、「監査オプション」を参照してください。 |
|
ファクタ・エラーをレポートするオプション。
詳細は、「エラー処理オプション」を参照してください。 |
|
大/小文字混在の最大80文字で、失敗を示すエラー・メッセージを入力し、 |
|
-20000から-20999または20000から20999の範囲の数値を入力し、 |
|
次の設定のいずれかを選択します。
詳細は、「エラー処理オプション」を参照してください。 |
|
カスタム・イベント・ハンドラ・ロジックを定義するPL/SQLファンクションまたはプロシージャの名前。 詳細は、「エラー処理オプション」を参照してください。 |
|
オプションです。アクセスされる際にルール・セットが評価される頻度を決定します。デフォルトは
|
例
BEGIN DBMS_MACADM.CREATE_RULE_SET( rule_set_name => 'Limit_DBA_Access', description => 'DBA access through predefined processes', enabled => DBMS_MACUTL.G_YES, eval_options => 2, audit_options => DBMS_MACUTL.G_RULESET_AUDIT_FAIL + DBMS_MACUTL.G_RULESET_AUDIT_SUCCESS, fail_options => DBMS_MACUTL.G_RULESET_FAIL_SILENT, fail_message => '', fail_code => 20461, handler_options => DBMS_MACUTL.G_RULESET_HANDLER_FAIL, handler => 'dbavowner.email_alert', is_static => TRUE); END; /
構文
DBMS_MACADM.DELETE_RULE( rule_name IN VARCHAR2);
パラメータ
表12-16 DELETE_RULEのパラメータ
パラメータ | 説明 |
---|---|
|
ルール名。 現行のデータベース・インスタンスで既存のルールを検索するには、「DVSYS.DBA_DV_RULEビュー」で説明されている ルール・セットに関連付けられているルールを検索するには、「DVSYS.DBA_DV_RULE_SET_RULEビュー」で説明されている |
例
EXEC DBMS_MACADM.DELETE_RULE('Check UPDATE operations');
DELETE_RULE_FROM_RULE_SET
プロシージャは、ルールをルール・セットから削除します。
構文
DBMS_MACADM.DELETE_RULE_FROM_RULE_SET( rule_set_name IN VARCHAR2, rule_name IN VARCHAR2);
パラメータ
表12-17 DELETE_RULE_FROM_RULE_SETのパラメータ
パラメータ | 説明 |
---|---|
|
ルール・セット名。 現行のデータベース・インスタンスで既存のルール・セットを検索するには、「DVSYS.DBA_DV_RULE_SETビュー」で説明されている |
|
ルール・セットから削除するルール。 現行のデータベース・インスタンスで既存のルールを検索するには、「DVSYS.DBA_DV_RULEビュー」で説明されている ルール・セットに関連付けられているルールを検索するには、「DVSYS.DBA_DV_RULE_SET_RULEビュー」で説明されている |
例
BEGIN DBMS_MACADM.DELETE_RULE_FROM_RULE_SET( rule_set_name => 'Limit_DBA_Access', rule_name => 'Check UPDATE operations'); END; /
DELETE_RULE_SET
プロシージャはルール・セットを削除します。
構文
DBMS_MACADM.DELETE_RULE_SET( rule_set_name IN VARCHAR2);
パラメータ
表12-18 DELETE_RULE_SETのパラメータ
パラメータ | 説明 |
---|---|
|
ルール・セット名。 現行のデータベース・インスタンスで既存のルール・セットを検索するには、「DVSYS.DBA_DV_RULE_SETビュー」で説明されている |
例
EXEC DBMS_MACADM.DELETE_RULE_SET('Limit_DBA_Access');
RENAME_RULE
プロシージャは、ルールの名前を変更します。名前の変更は、そのルールが使用されているすべての箇所に反映されます。
構文
DBMS_MACADM.RENAME_RULE( rule_name IN VARCHAR2, new_name IN VARCHAR2);
パラメータ
表12-19 RENAME_RULEのパラメータ
パラメータ | 説明 |
---|---|
|
現在のルール名。 現行のデータベース・インスタンスで既存のルールを検索するには、「DVSYS.DBA_DV_RULEビュー」で説明されている ルール・セットに関連付けられているルールを検索するには、「DVSYS.DBA_DV_RULE_SET_RULEビュー」で説明されている |
|
新しいルール名(大/小文字混在で最大90文字)。 |
例
BEGIN DBMS_MACADM.RENAME_RULE( rule_name => 'Check UPDATE operations', new_name => 'Check Sector 2 Processes'); END; /
RENAME_RULE_SET
プロシージャは、ルール・セットの名前を変更します。名前の変更は、そのルール・セットが使用されているすべての箇所に反映されます。
構文
DBMS_MACADM.RENAME_RULE_SET( rule_set_name IN VARCHAR2, new_name IN VARCHAR2);
パラメータ
表12-20 RENAME_RULE_SETのパラメータ
パラメータ | 説明 |
---|---|
|
現在のルール・セット名。 現行のデータベース・インスタンスで既存のルール・セットを検索するには、「DVSYS.DBA_DV_RULE_SETビュー」で説明されている |
|
新しいルール・セット名(大/小文字混在で最大90文字)。空白を使用できます。 |
例
BEGIN DBMS_MACADM.RENAME_RULE_SET( rule_set_name => 'Limit_DBA_Access', new_name => 'Limit Sector 2 Access'); END; /
SYNC_RULES
プロシージャは、Oracle Database Vaultルールとアドバンスト・キューイング・ルール・エンジンの同期をとります。ADD_RULE_TO_RULESET
、DELETE_RULE
、UPDATE_RULE
の各操作のロールバック後には、この操作を即時実行する必要があります。
構文
DBMS_MACADM.SYNC_RULES();
パラメータ
なし。
例
EXEC DBMS_MACADM.SYNC_RULES();
構文
DBMS_MACADM.UPDATE_RULE( rule_name IN VARCHAR2, rule_expr IN VARCHAR2);
パラメータ
表12-21 UPDATE_RULEのパラメータ
パラメータ | 説明 |
---|---|
|
ルール名。 現行のデータベース・インスタンスで既存のルールを検索するには、「DVSYS.DBA_DV_RULEビュー」で説明されている ルール・セットに関連付けられているルールを検索するには、「DVSYS.DBA_DV_RULE_SET_RULEビュー」で説明されている |
|
PL/SQL 式に引用符が含まれる場合、二重引用符は使用しないでください。その場合は、2つの一重引用符を使用します。式全体を一重引用符で囲んでください。次に例を示します。 'TO_CHAR(SYSDATE,''HH24'') = ''12''' ルール式の詳細は、「新規ルールの作成」を参照してください。 既存のルール式を検索するには、 |
例
BEGIN DBMS_MACADM.UPDATE_RULE( rule_name => 'Check UPDATE operations', rule_expr =>'SYS_CONTEXT(''USERENV'',''SESSION_USER'') = ''SYSADM'' AND ( UPPER(SYS_CONTEXT(''USERENV'',''MODULE'')) LIKE ''APPSRVR%'' OR UPPER(SYS_CONTEXT(''USERENV'',''MODULE'')) LIKE ''DBAPP%'' )' ); END; /
UPDATE_RULE_SET
プロシージャはルール・セットを更新します。
構文
DBMS_MACADM.UPDATE_RULE_SET( rule_set_name IN VARCHAR2, description IN VARCHAR2, enabled IN VARCHAR2, eval_options IN NUMBER, audit_options IN NUMBER, fail_options IN NUMBER, fail_message IN VARCHAR2, fail_code IN NUMBER, handler_options IN NUMBER, handler IN VARCHAR2, is_static IN BOOLEAN DEFAULT FALSE);
パラメータ
表12-22 UPDATE_RULE_SETのパラメータ
パラメータ | 説明 |
---|---|
|
ルール・セット名。 現行のデータベース・インスタンスで既存のルール・セットを検索するには、「DVSYS.DBA_DV_RULE_SETビュー」で説明されている |
|
ルール・セットの目的の説明(大/小文字混在で最大1024文字)。 |
|
|
|
ルール・セットに複数のルールを割り当てる場合は、次の設定のいずれかを入力します。
|
|
次の設定のいずれかを選択します。
詳細は、「監査オプション」を参照してください。 |
|
ファクタ・エラーをレポートするオプション。
詳細は、「エラー処理オプション」を参照してください。 |
|
失敗を示すエラー・メッセージ。大/小文字混在の最大80文字で、 |
|
-20000から-20999または20000から20999の範囲の数値を入力し、 |
|
次の設定のいずれかを選択します。
詳細は、「エラー処理オプション」を参照してください。 |
|
カスタム・イベント・ハンドラ・ロジックを定義するPL/SQLファンクションまたはプロシージャの名前。 詳細は、「エラー処理オプション」を参照してください。 |
|
オプションです。SQL文によってアクセスされる際に、ルール・セットが評価される頻度を決定します。
|
例
BEGIN DBMS_MACADM.UPDATE_RULE_SET( rule_set_name => 'Limit_DBA_Access', description => 'DBA access through predefined processes', enabled => DBMS_MACUTL.G_YES, eval_options => DBMS_MACUTL.G_RULESET_AUDIT_FAIL, audit_options => DBMS_MACUTL.G_RULESET_AUDIT_FAIL, fail_options => DBMS_MACUTL.G_RULESET_FAIL_SHOW, fail_message => 'Access denied!', fail_code => 20900, handler_options => DBMS_MACUTL.G_RULESET_HANDLER_OFF, handler => '', is_static = TRUE); END; /
表12-23に、コマンド・ルールの構成に使用できるDBMS_MACADM
パッケージのプロシージャを示します。
コマンド・ルールの詳細は、第6章「コマンド・ルールの構成」を参照してください。また、コマンド・ルール・プロシージャとともに使用できる一連の汎用ユーティリティ・プロシージャは、第14章「DBMS_MACUTLパッケージの使用方法」を参照してください。
表12-23 DBMS_MACADMのコマンド・ルール構成プロシージャ
プロシージャ | 説明 |
---|---|
|
コマンド・ルールを作成し、ルール・セットに関連付けて、ルール・セットによるコマンド・ルールのルール・チェックが有効化されるようにします。 |
|
コマンド・ルールの宣言を削除します。 |
|
コマンド・ルールの宣言を更新します。 |
CREATE_COMMAND_RULE
プロシージャはコマンド・ルールを作成し、ルール・セットに関連付けて、ルール・セットによるコマンド・ルールのルール・チェックが有効化されるようにします。
構文
DBMS_MACADM.CREATE_COMMAND_RULE( command IN VARCHAR2, rule_set_name IN VARCHAR2, object_owner IN VARCHAR2, object_name IN VARCHAR2, enabled IN VARCHAR2);
パラメータ
表12-24 CREATE_COMMAND_RULEのパラメータ
パラメータ | 説明 |
---|---|
|
保護するSQL文。 次の項も参照してください。
|
|
このコマンド・ルールに関連付けるルール・セットの名前。 現行のデータベース・インスタンスで既存のルール・セットを検索するには、「DVSYS.DBA_DV_RULE_SETビュー」で説明されている |
|
このコマンド・ルールを適用するデータベース・スキーマ。 使用可能なユーザーを検索するには、『Oracle Databaseリファレンス』で説明されている 詳細は、「コマンド・ルールの作成および編集」の「オブジェクト所有者」を参照してください。 |
|
オブジェクト名。(ワイルドカード%を使用できます。コマンド・ルールで保護されるオブジェクトの詳細は、「コマンド・ルールの作成および編集」の「オブジェクト名」を参照してください。) 使用可能なオブジェクトを検索するには、『Oracle Databaseリファレンス』で説明されている |
|
|
例
BEGIN DBMS_MACADM.CREATE_COMMAND_RULE( command => 'SELECT', rule_set_name => 'Limit Sector 2 Access', object_owner => 'SYSADM', object_name => 'EMP_DATA', enabled => DBMS_MACUTL.G_YES); END; /
DELETE_COMMAND_RULE
プロシージャは、コマンド・ルールの宣言を削除します。
構文
DBMS_MACADM.DELETE_COMMAND_RULE( command IN VARCHAR2, object_owner IN VARCHAR2, object_name IN VARCHAR2);
パラメータ
表12-25 DELETE_COMMAND_RULEのパラメータ
パラメータ | 説明 |
---|---|
|
コマンド・ルールで保護されるSQL文。 使用可能なコマンド・ルールを検索するには、「DVSYS.DBA_DV_COMMAND_RULEビュー」で説明されている |
|
このコマンド・ルールを適用するデータベース・スキーマ。 現行のデータベース・インスタンスで使用可能なユーザーを検索するには、『Oracle Databaseリファレンス』で説明されている 詳細は、「コマンド・ルールの作成および編集」の「オブジェクト所有者」を参照してください。 |
|
オブジェクト名。(ワイルドカード%を使用できます。コマンド・ルールで保護されるオブジェクトの詳細は、「コマンド・ルールの作成および編集」の「オブジェクト名」を参照してください。) 使用可能なオブジェクトを検索するには、『Oracle Databaseリファレンス』で説明されている |
例
BEGIN DBMS_MACADM.DELETE_COMMAND_RULE( command => 'SELECT', object_owner => 'SYSADM', object_name => 'EMP_DATA'); END; /
UPDATE_COMMAND_RULE
プロシージャは、コマンド・ルールの宣言を更新します。
構文
DBMS_MACADM.UPDATE_COMMAND_RULE( command IN VARCHAR2, rule_set_name IN VARCHAR2, object_owner IN VARCHAR2, object_name IN VARCHAR2, enabled IN VARCHAR2);
パラメータ
表12-26 UPDATE_COMMAND_RULEのパラメータ
パラメータ | 説明 |
---|---|
|
保護するSQL文。 次の項も参照してください。
|
|
このコマンド・ルールに関連付けるルール・セットの名前。 現行のデータベース・インスタンスで既存のルール・セットを検索するには、「DVSYS.DBA_DV_RULE_SETビュー」で説明されている |
|
このコマンド・ルールを適用するデータベース・スキーマ。 使用可能なユーザーを検索するには、『Oracle Databaseリファレンス』で説明されている |
|
オブジェクト名。(ワイルドカード%を使用できます。コマンド・ルールで保護されるオブジェクトの詳細は、「コマンド・ルールの作成および編集」の「オブジェクト名」を参照してください。) 使用可能なオブジェクトを検索するには、『Oracle Databaseリファレンス』で説明されている |
|
|
例
BEGIN DBMS_MACADM.UPDATE_COMMAND_RULE( command => 'SELECT', rule_set_name => 'Limit Sector 2 Access', object_owner => 'SYSADM', object_name => '%', enabled => DBMS_MACUTL.G_NO); END; /
表12-27に、ファクタの構成に使用できるDBMS_MACADM
パッケージのプロシージャおよびファンクションを示します。
関連項目:
|
表12-27 DBMS_MACADMのファクタ構成プロシージャ
ADD_FACTOR_LINK
プロシージャは、2つのファクタの親子関係を指定します。
構文
DBMS_MACADM.ADD_FACTOR_LINK( parent_factor_name IN VARCHAR2, child_factor_name IN VARCHAR2, label_indicator IN VARCHAR2);
パラメータ
表12-28 ADD_FACTOR_LINKのパラメータ
パラメータ | 説明 |
---|---|
|
親ファクタ名。 現行のデータベース・インスタンスで既存の親子ファクタを検索するには、「DVSYS.DBA_DV_FACTOR_LINKビュー」で説明されている |
|
子ファクタ名。 |
|
親ファクタにリンクされる子ファクタを、Oracle Label Security統合での親ファクタのラベルに含めることを示します。 ファクタに関連付けられているOracle Label Securityのポリシーおよびラベルを検索するには、第16章「Oracle Database Vaultのデータ・ディクショナリ・ビュー」で説明されている次のビューに問い合せます。
|
例
BEGIN DBMS_MACADM.ADD_FACTOR_LINK( parent_factor_name => 'HQ_ClientID', child_factor_name => 'Div1_ClientID', label_indicator => DBMS_MACUTL.G_YES); END; /
ADD_POLICY_FACTOR
プロシージャは、ファクタのラベルをポリシーのOracle Label Securityラベルに含めることを指定します。
構文
DBMS_MACADM.ADD_POLICY_FACTOR( policy_name IN VARCHAR2, factor_name IN VARCHAR2);
パラメータ
表12-29 ADD_POLICY_FACTORのパラメータ
パラメータ | 説明 |
---|---|
|
Oracle Label Securityポリシー名。 現行のデータベース・インスタンスに定義されているポリシーを検索するには、「DVSYS.DBA_DV_MAC_POLICYビュー」で説明されている Oracle Label Securityポリシーに関連付けられているファクタを検索するには、「DVSYS.DBA_DV_MAC_POLICY_FACTORビュー」で説明されている |
|
ファクタ名。 既存のファクタを検索するには、「DVSYS.DBA_DV_FACTORビュー」で説明されている |
例
BEGIN DBMS_MACADM.ADD_POLICY_FACTOR( policy_name => 'AccessData', factor_name => 'Sector2_ClientID'); END; /
CHANGE_IDENTITY_FACTOR
プロシージャは、アイデンティティを別ファクタと関連付けます。
構文
DBMS_MACADM.CHANGE_IDENTITY_FACTOR( factor_name IN VARCHAR2, value IN VARCHAR2, new_factor_name IN VARCHAR2);
パラメータ
表12-30 CHANGE_IDENTITY_FACTORのパラメータ
パラメータ | 説明 |
---|---|
|
現在のファクタ名。 既存のファクタを検索するには、「DVSYS.DBA_DV_FACTORビュー」で説明されている |
|
更新するアイデンティティの値。 現行のデータベース・インスタンスで各ファクタの既存のアイデンティティを検索するには、「DVSYS.DBA_DV_IDENTITYビュー」で説明されている 現行のアイデンティティ・マップを検索するには、「DVSYS.DBA_DV_IDENTITY_MAPビュー」で説明されている |
|
アイデンティティと関連付けるファクタの名前。「DVSYS.DBA_DV_FACTORビュー」で説明されている |
例
BEGIN DBMS_MACADM.CHANGE_IDENTITY_FACTOR( factor_name => 'Sector2_ClientID', value => 'intranet', new_factor_name => 'Sector4_ClientID'); END; /
CHANGE_IDENTITY_FACTOR
プロシージャは、アイデンティティの値を更新します。
構文
DBMS_MACADM.CHANGE_IDENTITY_VALUE( factor_name IN VARCHAR2, value IN VARCHAR2, new_value IN VARCHAR2);
パラメータ
表12-31 CHANGE_IDENTITY_VALUEのパラメータ
パラメータ | 説明 |
---|---|
|
ファクタ名。 既存のファクタを検索するには、「DVSYS.DBA_DV_FACTORビュー」で説明されている |
|
アイデンティティに関連付けられている現在の値。 現行のデータベース・インスタンスで各ファクタの既存のアイデンティティを検索するには、「DVSYS.DBA_DV_IDENTITYビュー」で説明されている 現行のアイデンティティ・マップを検索するには、「DVSYS.DBA_DV_IDENTITY_MAPビュー」で説明されている |
|
新しいアイデンティティ値(大/小文字混在で最大1024文字)。 |
例
BEGIN DBMS_MACADM.CHANGE_IDENTITY_VALUE( factor_name => 'Sector2_ClientID', value => 'remote', new_value => 'intranet'); END; /
CREATE_DOMAIN_IDENTITY
プロシージャは、Oracle Real Application Clusters(Oracle RAC)データベース・ノードをドメイン・ファクタ・アイデンティティに追加し、Oracle Label Securityポリシーに従ってラベルを付けます。
構文
DBMS_MACADM.CREATE_DOMAIN_IDENTITY( domain_name IN VARCHAR2, domain_host IN VARCHAR2, policy_name IN VARCHAR2 DEFAULT NULL, domain_label IN VARCHAR2 DEFAULT NULL);
パラメータ
表12-32 CREATE_DOMAIN_IDENTITYのパラメータ
パラメータ | 説明 |
---|---|
|
ホストを追加するドメインの名前。 分散データベース・システムのネットワーク構造内でデータベースの論理的な場所を検索するには、「Oracle Database VaultのPL/SQLファクタ・ファンクション」で説明されている |
|
ドメインに追加されるOracle Real Application Clustersホスト名。 データベースのホスト名を検索するには、「Oracle Database VaultのPL/SQLファクタ・ファンクション」で説明されている |
|
Oracle Label Securityポリシー名。ポリシー名を省略すると、ドメインはどのポリシーにも関連付けられません。 使用可能なポリシーを検索するには、「DVSYS.DBA_DV_MAC_POLICYビュー」で説明されている |
|
Oracle Label Securityポリシーを追加するドメインの名前。 |
例
BEGIN DBMS_MACADM.CREATE_DOMAIN_IDENTITY( domain_name => 'example', domain_host => 'mydom_host', policy_name => 'AccessData', domain_label => 'sensitive'); END; /
CREATE_FACTOR
プロシージャはファクタを作成します。ファクタを作成した後で、「CREATE_IDENTITYプロシージャ」で説明されているCREATE_IDENTITY
プロシージャを使用して、アイデンティティを付与できます。
構文
DBMS_MACADM.CREATE_FACTOR( factor_name IN VARCHAR2, factor_type_name IN VARCHAR2, description IN VARCHAR2, rule_set_name IN VARCHAR2, get_expr IN VARCHAR2, validate_expr IN VARCHAR2, identify_by IN NUMBER, labeled_by IN NUMBER, eval_options IN NUMBER, audit_options IN NUMBER, fail_options IN NUMBER);
パラメータ
表12-33 CREATE_FACTORのパラメータ
パラメータ | 説明 |
---|---|
|
ファクタ名(空白を使用せず、大/小文字混在で最大28文字)。 現行のデータベース・インスタンスで既存のファクタを検索するには、「DVSYS.DBA_DV_FACTORビュー」で説明されている |
|
ファクタのタイプ(空白を使用せず、大/小文字混在で最大30文字)。 既存のファクタ・タイプを検索するには、「DVSYS.DBA_DV_FACTOR_TYPEビュー」で説明されている |
|
ファクタの目的の説明(大/小文字混在で最大1024文字)。 |
|
ファクタ・アイデンティティを設定する時期および方法の制御にルール・セットを使用する場合のルール・セット名。 既存のルール・セットを検索するには、「DVSYS.DBA_DV_RULE_SETビュー」で説明されている |
|
ファクタのアイデンティティを取得する有効なPL/SQL式。大/小文字混在で最大255文字まで使用できます。詳細は、「取得メソッド」を参照してください。 |
|
ファクタを検証するプロシージャの名前。これは、ブール値( |
|
詳細は、「ファクタの識別」を参照してください。 |
|
ファクタのラベル付けのオプション。
詳細は、「ファクタ・ラベリング」を参照してください。 |
|
ユーザーがログインするときにファクタを評価するオプション。
詳細は、「評価」を参照してください。 |
|
カスタムのOracle Database Vault監査レコードから生成する場合にファクタを監査するオプション。
詳細は、「監査オプション」を参照してください。 |
|
ファクタ・エラーをレポートするオプション。
詳細は、「エラー・オプション」を参照してください。 |
例
BEGIN DBMS_MACADM.CREATE_FACTOR( factor_name => 'Sector2_DB', factor_type_name => 'Instance', description => ' ', rule_set_name => 'Limit_DBA_Access', get_expr => 'UPPER(SYS_CONTEXT(''USERENV'',''DB_NAME''))', validate_expr => 'dbavowner.check_db_access', identify_by => DBMS_MACUTL.G_IDENTIFY_BY_METHOD, labeled_by => DBMS_MACUTL.G_LABELED_BY_SELF, eval_options => DBMS_MACUTL.G_EVAL_ON_SESSION, audit_options => DBMS_MACUTL.G_AUDIT_OFF, fail_options => DBMS_MACUTL.G_FAIL_SILENTLY); END; /
CREATE_FACTOR_TYPE
プロシージャは、ユーザー定義のファクタ・タイプを作成します。
構文
DBMS_MACADM.CREATE_FACTOR_TYPE( name IN VARCHAR2, description IN VARCHAR2);
パラメータ
表12-34 CREATE_FACTOR_TYPEのパラメータ
パラメータ | 説明 |
---|---|
|
ファクタ・タイプ名(空白を使用せず、大/小文字混在で最大30文字)。 既存のファクタ・タイプを検索するには、「DVSYS.DBA_DV_FACTOR_TYPEビュー」で説明されている |
|
ファクタ・タイプの目的の説明(大/小文字混在で最大1024文字)。 |
例
BEGIN DBMS_MACADM.CREATE_FACTOR_TYPE( name => 'Sector2Instance', description => 'Checks DB instances used in Sector 2'); END; /
CREATE_IDENTITY
プロシージャは、指定されたファクタに対してアイデンティティおよび関連付けられた信頼レベルを割り当てます。ファクタの作成後には、アイデンティティを割り当てる必要があります。
構文
DBMS_MACADM.CREATE_IDENTITY( factor_name IN VARCHAR2, value IN VARCHAR2, trust_level IN NUMBER);
パラメータ
表12-35 CREATE_IDENTITYのパラメータ
パラメータ | 説明 |
---|---|
|
ファクタ名。 既存のファクタを検索するには、「DVSYS.DBA_DV_FACTORビュー」で説明されている |
|
ファクタの実際の値(大/小文字混在で最大1024文字)。たとえば、IP_Addressファクタのアイデンティティは、192.0.2.12というIPアドレスになります。 |
|
同じファクタの別のアイデンティティと比較した信頼の度合いを示す数値。一般に、信頼レベルの数値が高く設定されているほど信頼の度合いも高くなります。信頼レベル10は、非常に信頼度が高いことを表します。信頼レベルの数値が負の場合は信頼できません。 信頼レベルおよびラベル・セキュリティの詳細は、「ファクタ・アイデンティティの作成および構成」を参照してください。 |
例
BEGIN DBMS_MACADM.CREATE_IDENTITY( factor_name => 'Sector2_ClientID', value => 'intranet', trust_level => 5); END; /
CREATE_IDENTITY_MAP
プロシージャは、リンクされた子ファクタ(サブファクタ)の値からファクタのアイデンティティを導出するために使用される一連のテストを定義します。
構文
DBMS_MACADM.CREATE_IDENTITY_MAP( identity_factor_name IN VARCHAR2, identity_factor_value IN VARCHAR2, parent_factor_name IN VARCHAR2, child_factor_name IN VARCHAR2, operation IN VARCHAR2, operand1 IN VARCHAR2, operand2 IN VARCHAR2);
パラメータ
表12-36 CREATE_IDENTITY_MAPのパラメータ
パラメータ | 説明 |
---|---|
|
アイデンティティ・マップの対象のファクタ。 現行のデータベース・インスタンスで既存のファクタを検索するには、「DVSYS.DBA_DV_FACTORビュー」で説明されている |
|
アイデンティティ・マップの評価が 既存のファクタ・アイデンティティを検索するには、「DVSYS.DBA_DV_IDENTITYビュー」で説明されている 現行のファクタ・アイデンティティ・マップを検索するには、「DVSYS.DBA_DV_IDENTITY_MAPビュー」で説明されている |
|
マップが関連する親ファクタ・リンク。 既存の親子ファクタ・マップを検索するには、「DVSYS.DBA_DV_IDENTITY_MAPビュー」で説明されている |
|
マップが関連する子ファクタ・リンク。 |
|
アイデンティティ・マップの関係演算子(たとえば、<、>、=など)。 |
|
関係演算子の左オペランド。入力する下限値を表します。 |
|
関係演算子の右オペランド。入力する上限値を表します。 |
例
BEGIN DBMS_MACADM.CREATE_IDENTITY_MAP( identity_factor_name => 'Sector2_ClientID', identity_factor_value => 'intranet', parent_factor_name => 'HQ_ClientID', child_factor_name => 'Div1_ClientID', operation => '<', operand1 => '192.0.2.50', operand2 => '192.0.2.100'); END; /
DELETE_FACTOR
プロシージャはファクタを削除します。
構文
DBMS_MACADM.DELETE_FACTOR( factor_name IN VARCHAR2);
パラメータ
表12-37 DELETE_FACTORのパラメータ
パラメータ | 説明 |
---|---|
|
ファクタ名。 現行のデータベース・インスタンスで既存のファクタを検索するには、「DVSYS.DBA_DV_FACTORビュー」で説明されている |
例
EXEC DBMS_MACADM.DELETE_FACTOR('Sector2_ClientID');
DELETE_FACTOR_LINK
プロシージャは、2つのファクタの親子関係を削除します。
構文
DBMS_MACADM.DELETE_FACTOR_LINK( parent_factor_name IN VARCHAR2, child_factor_name IN VARCHAR2);
パラメータ
表12-38 DELETE_FACTOR_LINKのパラメータ
パラメータ | 説明 |
---|---|
|
ファクタ名。 現行のデータベース・インスタンスで親子マッピングに使用されているファクタを検索するには、「DVSYS.DBA_DV_FACTOR_LINKビュー」で説明されている |
|
ファクタ名。 |
例
BEGIN DBMS_MACADM.DELETE_FACTOR_LINK( parent_factor_name => 'HQ_ClientID', child_factor_name => 'Div1_ClientID'); END; /
DELETE_FACTOR_TYPE
プロシージャはファクタ・タイプを削除します。
構文
DBMS_MACADM.DELETE_FACTOR_TYPE( name IN VARCHAR2);
パラメータ
表12-39 DELETE_FACTOR_TYPEのパラメータ
パラメータ | 説明 |
---|---|
|
ファクタ・タイプ名。 既存のファクタ・タイプを検索するには、「DVSYS.DBA_DV_FACTOR_TYPEビュー」で説明されている |
例
EXEC DBMS_MACADM.DELETE_FACTOR_TYPE('Sector2Instance');
DELETE_IDENTITY
プロシージャは、既存のファクタからアイデンティティを削除します。
構文
DBMS_MACADM.DELETE_IDENTITY( factor_name IN VARCHAR2, value IN VARCHAR2);
パラメータ
表12-40 DELETE_IDENTITYのパラメータ
パラメータ | 説明 |
---|---|
|
ファクタ名。 現行のデータベース・インスタンスで既存のファクタを検索するには、「DVSYS.DBA_DV_FACTORビュー」で説明されている |
|
ファクタに関連付けられているアイデンティティ値。 現行のデータベース・インスタンスで各ファクタのアイデンティティを検索するには、「DVSYS.DBA_DV_IDENTITYビュー」で説明されている |
例
BEGIN DBMS_MACADM.DELETE_IDENTITY( factor_name => 'Sector2_ClientID', value => 'intranet'); END; /
DELETE_IDENTITY_MAP
プロシージャは、ファクタのアイデンティティ・マップを削除します。
構文
DBMS_MACADM.DELETE_IDENTITY_MAP( identity_factor_name IN VARCHAR2, identity_factor_value IN VARCHAR2, parent_factor_name IN VARCHAR2, child_factor_name IN VARCHAR2, operation IN VARCHAR2, operand1 IN VARCHAR2, operand2 IN VARCHAR2);
パラメータ
表12-41 DELETE_IDENTITY_MAPのパラメータ
パラメータ | 説明 |
---|---|
|
アイデンティティ・マップの対象のファクタ。 現行のデータベース・インスタンスで既存のファクタを検索するには、「DVSYS.DBA_DV_FACTORビュー」で説明されている |
|
アイデンティティ・マップの評価が 既存のファクタ・アイデンティティを検索するには、「DVSYS.DBA_DV_IDENTITYビュー」で説明されている 現行のファクタ・アイデンティティ・マップを検索するには、「DVSYS.DBA_DV_IDENTITY_MAPビュー」で説明されている |
|
マップが関連する親ファクタ・リンク。 既存の親子ファクタを検索するには、「DVSYS.DBA_DV_FACTOR_LINKビュー」で説明されている |
|
マップが関連する子ファクタ。 |
|
アイデンティティ・マップの関係演算子(たとえば、<、>、=など)。 |
|
関係演算子の左(下限値)オペランド。 |
|
関係演算子の右(上限値)オペランド。 |
例
BEGIN DBMS_MACADM.DELETE_IDENTITY_MAP( identity_factor_name => 'Sector2_ClientID', identity_factor_value => 'intranet', parent_factor_name => 'HQ_ClientID', child_factor_name => 'Div1_ClientID', operation => '<', operand1 => '192.0.2.10', operand2 => '192.0.2.15'); END; /
DROP_DOMAIN_IDENTITY
プロシージャは、Oracle Real Application Clustersデータベース・ノードをドメインから削除します。
構文
DBMS_MACADM.DROP_DOMAIN_IDENTITY( domain_name IN VARCHAR2, domain_host IN VARCHAR2);
パラメータ
表12-42 DROP_DOMAIN_IDENTITYのパラメータ
パラメータ | 説明 |
---|---|
|
ホストが追加されたドメインの名前。
|
|
ドメインに追加されたOracle Real Application Clustersホスト名。 指定されたデータベースのホスト名を検索するには、「Oracle Database VaultのPL/SQLファクタ・ファンクション」で説明されている |
例
BEGIN DBMS_MACADM.DROP_DOMAIN_IDENTITY( domain_name => 'example', domain_host => 'mydom_host'); END; /
GET_INSTANCE_INFO
ファンクションは、現行のデータベース・インスタンスについてSYS.V_$INSTANCE
システム表の情報を返します。V$INSTANCE
データ・ディクショナリ・ビューにも、この表のデータベース・インスタンス情報が含まれます。詳細は、『Oracle Databaseリファレンス』を参照してください。
構文
DBMS_MACADM.GET_INSTANCE_INFO( p_parameter IN VARCHAR2) RETURN VARCHAR2;
パラメータ
例
DECLARE instance_var varchar2 := null; BEGIN instance_var = DBMS_MACADM.GET_INSTANCE_INFO('INSTANCE_NAME'); END; /
GET_SESSION_INFO
ファンクションは、現行セッションについてSYS.V_$SESSION
システム表の情報を返します。V$SESSION
データ・ディクショナリ・ビューにも、この表のセッション情報が含まれます。詳細は、『Oracle Databaseリファレンス』を参照してください。
構文
DBMS_MACADM.GET_SESSION_INFO( p_parameter IN VARCHAR2) RETURN VARCHAR2;
パラメータ
例
DECLARE session_var varchar2 := null; BEGIN session_var = DBMS_MACADM.GET_SESSION_INFO('PROCESS'); END; /
RENAME_FACTOR
プロシージャは、ファクタの名前を変更します。名前の変更は、そのファクタが使用されているすべての箇所に反映されます。
構文
DBMS_MACADM.RENAME_FACTOR( factor_name IN VARCHAR2, new_factor_name IN VARCHAR2);
パラメータ
表12-45 RENAME_FACTORのパラメータ
パラメータ | 説明 |
---|---|
|
現在のファクタ名。 現行のデータベース・インスタンスで既存のファクタを検索するには、「DVSYS.DBA_DV_FACTORビュー」で説明されている |
|
新しいファクタ名(空白を使用せず、大/小文字混在で最大28文字)。 |
例
BEGIN DBMS_MACADM.RENAME_FACTOR( factor_name => 'Sector2_ClientID', new_factor_name => 'Sector2_Clients'); END; /
RENAME_FACTOR
プロシージャは、ファクタ・タイプの名前を変更します。名前の変更は、そのファクタ・タイプが使用されているすべての箇所に反映されます。
構文
DBMS_MACADM.RENAME_FACTOR_TYPE( old_name IN VARCHAR2, new_name IN VARCHAR2);
パラメータ
表12-46 RENAME_FACTOR_TYPEのパラメータ
パラメータ | 説明 |
---|---|
|
現在のファクタ・タイプ名。 現行のデータベース・インスタンスで既存のファクタ・タイプを検索するには、「DVSYS.DBA_DV_FACTOR_TYPEビュー」で説明されている |
|
新しいファクタ・タイプ名(空白を使用せず、大/小文字混在で最大30文字)。 |
例
BEGIN DBMS_MACADM.RENAME_FACTOR_TYPE( old_name => 'Sector2Instance', new_name => 'Sector2DBInstance'); END; /
UPDATE_FACTOR
プロシージャは、ファクタ・タイプの説明を更新します。
構文
DBMS_MACADM.UPDATE_FACTOR( factor_name IN VARCHAR2, factor_type_name IN VARCHAR2, description IN VARCHAR2, rule_set_name IN VARCHAR2, get_expr IN VARCHAR2, validate_expr IN VARCHAR2, identify_by IN NUMBER, labeled_by IN NUMBER, eval_options IN NUMBER, audit_options IN NUMBER, fail_options IN NUMBER);
パラメータ
表12-47 UPDATE_FACTOR
パラメータ | 説明 |
---|---|
|
ファクタ名。 現行のデータベース・インスタンスで既存のファクタを検索するには、「DVSYS.DBA_DV_FACTORビュー」で説明されている |
|
ファクタ・タイプ名。 既存のファクタ・タイプを検索するには、「DVSYS.DBA_DV_FACTOR_TYPEビュー」で説明されている |
|
ファクタの目的の説明(大/小文字混在で最大1024文字)。 |
|
ファクタ・アイデンティティを設定する時期および方法の制御に使用されるルール・セットの名前。 既存のルール・セットを検索するには、「DVSYS.DBA_DV_RULE_SETビュー」で説明されている ファクタへのルール・セットの割当ての詳細は、「割当てルール・セット」を参照してください。 |
|
ファクタのアイデンティティを取得する有効なPL/SQL式。大/小文字混在で最大255文字まで使用できます。詳細は、「取得メソッド」を参照してください。 |
|
ファクタを検証するプロシージャの名前。これは、ブール値( |
|
詳細は、「ファクタの識別」を参照してください。 |
|
ファクタのラベル付けのオプション。
詳細は、「ファクタ・ラベリング」を参照してください。 |
|
ユーザーがログインするときにファクタを評価するオプション。
詳細は、「評価」を参照してください。 |
|
カスタムのOracle Database Vault監査レコードから生成する場合にファクタを監査するオプション。
詳細は、「監査オプション」を参照してください。 |
|
ファクタ・エラーをレポートするオプション。
詳細は、「エラー・オプション」を参照してください。 |
例
BEGIN DBMS_MACADM.UPDATE_FACTOR( factor_name => 'Sector2_DB', factor_type_name => 'Instance', description => ' ', rule_set_name => 'Limit_DBA_Access', get_expr => 'UPPER(SYS_CONTEXT(''USERENV'',''DB_NAME''))', validate_expr => 'dbavowner.check_db_access', identify_by => DBMS_MACUTL.G_IDENTIFY_BY_METHOD, labeled_by => DBMS_MACUTL.G_LABELED_BY_SELF, eval_options => DBMS_MACUTL.G_EVAL_ON_ACCESS, audit_options => DBMS_MACUTL.G_AUDIT_ALWAYS, fail_options => DBMS_MACUTL.G_FAIL_WITH_MESSAGE); END; /
UPDATE_FACTOR_TYPE
プロシージャはファクタ・タイプを更新します。
構文
DBMS_MACADM.UPDATE_FACTOR_TYPE( name IN VARCHAR2, description IN VARCHAR2);
パラメータ
表12-48 UPDATE_FACTOR_TYPEのパラメータ
パラメータ | 説明 |
---|---|
|
ファクタ・タイプ名。 現行のデータベース・インスタンスで既存のファクタ・タイプを検索するには、「DVSYS.DBA_DV_FACTOR_TYPEビュー」で説明されている |
|
ファクタ・タイプの目的の説明(大/小文字混在で最大1024文字)。 |
例
BEGIN DBMS_MACADM.UPDATE_FACTOR_TYPE( name => 'Sector2DBInstance', description => 'Checks DB instances used in Sector 2'); END; /
UPDATE_IDENTITY
プロシージャは、ファクタ・アイデンティティの信頼レベルを更新します。
構文
DBMS_MACADM.UPDATE_IDENTITY( factor_name IN VARCHAR2, value IN VARCHAR2, trust_level IN NUMBER);
パラメータ
表12-49 UPDATE_IDENTITYのパラメータ
パラメータ | 説明 |
---|---|
|
ファクタ名。 現行のデータベース・インスタンス内の既存のファクタを検索するには、「DVSYS.DBA_DV_FACTORビュー」で説明されている アイデンティティを持つファクタを検索するには、「DVSYS.DBA_DV_IDENTITYビュー」で説明されている |
|
新しいファクタ・アイデンティティ(大/小文字混在で最大1024文字)。たとえば、IP_Addressファクタのアイデンティティは、192.0.2.12というIPアドレスになります。 |
|
同じファクタの別のアイデンティティと比較した信頼の度合いを示す数値。一般に、信頼レベルの数値が高く設定されているほど信頼の度合いも高くなります。信頼レベル10は、非常に信頼度が高いことを表します。信頼レベルの数値が負の場合は信頼できません。 信頼レベルおよびラベル・セキュリティの詳細は、「ファクタ・アイデンティティの作成および構成」を参照してください。 |
例
BEGIN DBMS_MACADM.UPDATE_IDENTITY( factor_name => 'Sector2_ClientID', value => 'intranet', trust_level => 10); END; /
表12-50に、Oracle Database Vaultセキュア・アプリケーション・ロールの構成に使用できるDBMS_MACADM
パッケージのプロシージャを示します。
セキュア・アプリケーション・ロールの詳細は、第8章「Oracle Database Vaultのセキュア・アプリケーション・ロールの構成」を参照してください。また、セキュア・アプリケーション・ロール・プロシージャとともに使用できる一連の汎用ユーティリティ・プロシージャは、第14章「DBMS_MACUTLパッケージの使用方法」を参照してください。
表12-50 DBMS_MACADMのセキュア・アプリケーション・ロール構成プロシージャ
プロシージャ | 説明 |
---|---|
|
Oracle Database Vaultセキュア・アプリケーション・ロールを作成します。 |
|
Oracle Database Vaultセキュア・アプリケーション・ロールを削除します。 |
|
Oracle Database Vaultセキュア・アプリケーション・ロールの名前を変更します。名前の変更は、そのロールが使用されているすべての箇所に反映されます。 |
|
Oracle Database Vaultセキュア・アプリケーション・ロールを更新します。 |
CREATE_ROLE
プロシージャは、Oracle Database Vaultセキュア・アプリケーション・ロールを作成します。
構文
DBMS_MACADM.CREATE_ROLE( role_name IN VARCHAR2, enabled IN VARCHAR2, rule_set_name IN VARCHAR2);
パラメータ
表12-51 CREATE_ROLEのパラメータ
パラメータ | 説明 |
---|---|
|
ロール名(空白を使用せず、最大30文字)。必須ではありませんが、ロール名は大文字で入力することをお薦めします。 現行のデータベース・インスタンスで既存のセキュア・アプリケーション・ロールを検索するには、「DVSYS.DBA_DV_ROLEビュー」で説明されている |
|
次の
|
|
ユーザーがこのセキュア・アプリケーション・ロールを設定できるかどうかを判断するためのルール・セットの名前。 現行のデータベース・インスタンスで既存のルール・セットを検索するには、「DVSYS.DBA_DV_RULE_SETビュー」で説明されている |
例
BEGIN DBMS_MACADM.CREATE_ROLE( role_name => 'Sector2_APP_MGR', enabled => DBMS_MACUTL.G_YES, rule_set_name => 'Check App2 Access'); END; /
DELETE_ROLE
プロシージャは、Oracle Database Vaultセキュア・アプリケーション・ロールを削除します。
構文
DBMS_MACADM.DELETE_ROLE( role_name IN VARCHAR2);
パラメータ
表12-52 DELETE_ROLEのパラメータ
パラメータ | 説明 |
---|---|
|
ロール名。 現行のデータベース・インスタンスで既存のセキュア・アプリケーション・ロールを検索するには、「DVSYS.DBA_DV_ROLEビュー」で説明されている |
例
EXEC DBMS_MACADM.DELETE_ROLE('SECT2_APP_MGR');
RENAME_ROLE
プロシージャは、Oracle Database Vaultセキュア・アプリケーション・ロールの名前を変更します。名前の変更は、そのロールが使用されているすべての箇所に反映されます。
構文
DBMS_MACADM.RENAME_ROLE( role_name IN VARCHAR2, new_role_name IN VARCHAR2);
パラメータ
表12-53 RENAME_ROLEのパラメータ
パラメータ | 説明 |
---|---|
|
現在のロール名。必須ではありませんが、ロール名は大文字で入力することをお薦めします。 現行のデータベース・インスタンスで既存のセキュア・アプリケーション・ロールを検索するには、「DVSYS.DBA_DV_ROLEビュー」で説明されている |
|
ロール名(空白を使用せず、大文字で最大30文字)。この名前が、『Oracle Database SQL言語リファレンス』で説明されている、ロール作成の標準のOracleネーミング規則に準拠していることを確認してください。 |
例
BEGIN DBMS_MACADM.RENAME_ROLE( role_name => 'SECT2_APP_MGR', new_role_name => 'SECT2_SYSADMIN'); END; /
UPDATE_ROLE
プロシージャは、Oracle Database Vaultセキュア・アプリケーション・ロールを更新します。
構文
DBMS_MACADM.UPDATE_ROLE( role_name IN VARCHAR2, enabled IN VARCHAR2, rule_set_name IN VARCHAR2);
パラメータ
表12-54 UPDATE_ROLEのパラメータ
パラメータ | 説明 |
---|---|
|
ロール名。 現行のデータベース・インスタンスで既存のセキュア・アプリケーション・ロールを検索するには、「DVSYS.DBA_DV_ROLEビュー」で説明されている |
|
|
|
ユーザーがこのセキュア・アプリケーション・ロールを設定できるかどうかを判断するためのルール・セットの名前。 現行のデータベース・インスタンスで既存のルール・セットを検索するには、「DVSYS.DBA_DV_RULE_SETビュー」で説明されている |
例
BEGIN DBMS_MACADM.UPDATE_ROLE( role_name => 'SECT2_SYSADMIN', enabled => DBMS_MACUTL.G_YES, rule_set_name => 'System Access Controls'); END; /
表12-55に、Oracle Database VaultにOracle Label Securityポリシーを構成するために使用できるDBMS_MACADM
パッケージのプロシージャを示します。
Oracle Label Securityポリシーの詳細は、第9章「Oracle Database Vaultとその他のOracle製品の統合」を参照してください。また、Oracle Label Securityポリシー・プロシージャとともに使用できる一連の汎用ユーティリティ・プロシージャは、第14章「DBMS_MACUTLパッケージの使用方法」を参照してください。
表12-55 DBMS_MACADMのOracle Label Security構成プロシージャ
プロシージャ | 説明 |
---|---|
|
ファクタのラベルまたはOracle Label Securityセッション・ラベルを算出する際にラベルのマージに使用されるアルゴリズムを指定します。 |
|
Oracle Label Securityポリシー内のアイデンティティにラベルを付けます。 |
DELETE_MAC_POLICY_CASCADEプロシージャ |
Oracle Label Securityポリシーに関連するすべてのOracle Database Vaultオブジェクトを削除します。 |
|
Oracle Label Securityラベルの構成からファクタを削除します。 |
|
Oracle Label Securityポリシーのアイデンティティからラベルを削除します。 |
|
ファクタのラベルまたはOracle Label Securityセッション・ラベルを算出する際にラベルのマージに使用されるアルゴリズムを指定します。 |
CREATE_MAC_POLICY
プロシージャは、ファクタのラベルまたはOracle Label Securityセッション・ラベルを算出する際にラベルのマージに使用されるアルゴリズムを指定します。
構文
DBMS_MACADM.CREATE_MAC_POLICY( policy_name IN VARCHAR2, algorithm IN VARCHAR2);
パラメータ
表12-56 CREATE_MAC_POLICYのパラメータ
パラメータ | 説明 |
---|---|
|
既存のポリシーの名前。 現行のデータベース・インスタンスで既存のポリシーを検索するには、「DVSYS.DBA_DV_MAC_POLICYビュー」で説明されている |
|
Oracle Label Securityで2つのラベルをマージしている場合のマージ・アルゴリズム。表12-57に示されている、目的のマージ・アルゴリズムに対応するコードを入力します。たとえば、「最大レベル/論理和/論理和」マージ・アルゴリズムを選択する場合は、 ラベルマージ・アルゴリズムの詳細は、『Oracle Label Security管理者ガイド』を参照してください。 |
表12-57 Oracle Label Securityマージ・アルゴリズム・コード
コード | 値 |
---|---|
|
最大レベル/論理和/論理和 |
|
最大レベル/論理積/論理和 |
|
最大レベル/減算/論理和 |
|
最大レベル/NULL/論理和 |
|
最大レベル/論理和/論理積 |
|
最大レベル/論理積/論理積 |
|
最大レベル/減算/論理積 |
|
最大レベル/NULL/論理積 |
|
最大レベル/論理和/減算 |
|
最大レベル/論理積/減算 |
|
最大レベル/減算/減算 |
|
最大レベル/NULL/減算 |
|
最大レベル/論理和/NULL |
|
最大レベル/論理積/NULL |
|
最大レベル/減算/NULL |
|
最大レベル/NULL/NULL |
|
最小レベル/論理和/論理和 |
|
最小レベル/論理積/論理和 |
|
最小レベル/減算/論理和 |
|
最小レベル/NULL/論理和 |
|
最小レベル/論理和/論理積 |
|
最小レベル/論理積/論理積 |
|
最小レベル/減算/論理積 |
|
最小レベル/NULL/論理積 |
|
最小レベル/論理和/減算 |
|
最小レベル/論理積/減算 |
|
最小レベル/減算/減算 |
|
最小レベル/NULL/減算 |
|
最小レベル/論理和/NULL |
|
最小レベル/論理積/NULL |
|
最小レベル/減算/NULL |
|
最小レベル/NULL/NULL |
例
BEGIN DBMS_MACADM.CREATE_MAC_POLICY( policy_name => 'Access Locations', algorithm => 'HUU'); END; /
CREATE_POLICY_LABEL
プロシージャは、Oracle Label Securityポリシーのアイデンティティにラベルを付けます。
構文
DBMS_MACADM.CREATE_POLICY_LABEL( identity_factor_name IN VARCHAR2, identity_factor_value IN VARCHAR2, policy_name IN VARCHAR2, label IN VARCHAR2);
パラメータ
表12-58 CREATE_POLICY_LABELのパラメータ
パラメータ | 説明 |
---|---|
|
ラベルを付けるファクタの名前。 現行のデータベース・インスタンスで既存のファクタを検索するには、「DVSYS.DBA_DV_FACTORビュー」で説明されている Oracle Label Securityポリシーに関連付けられているファクタを検索するには、「DVSYS.DBA_DV_MAC_POLICY_FACTORビュー」で説明されている 詳細は、「Label Securityポリシー・ファクタ」を参照してください。 |
|
ラベルを付けるファクタのアイデンティティの値。 現行のデータベース・インスタンスで既存のファクタのアイデンティティを検索するには、「DVSYS.DBA_DV_IDENTITYビュー」で説明されている |
|
既存のポリシーの名前。 現行のデータベース・インスタンスで既存のポリシーを検索するには、「DVSYS.DBA_DV_MAC_POLICYビュー」で説明されている |
|
Oracle Label Securityラベル名。 ファクタ・アイデンティティの既存のポリシー・ラベルを検索するには、「DVSYS.DBA_DV_POLICY_LABELビュー」で説明されている |
例
BEGIN DBMS_MACADM.CREATE_POLICY_LABEL( identity_factor_name => 'App_Host_Name', identity_factor_value => 'Sect2_Fin_Apps', policy_name => 'Access Locations', label => 'Sensitive'); END; /
DELETE_MAC_POLICY_CASCADE
プロシージャは、Oracle Label Securityポリシーに関連するすべてのOracle Database Vaultオブジェクトを削除します。
構文
DBMS_MACADM.DELETE_MAC_POLICY_CASCADE( policy_name IN VARCHAR2);
パラメータ
表12-59 DELETE_MAC_POLICY_CASCADEのパラメータ
パラメータ | 説明 |
---|---|
|
既存のポリシーの名前。 現行のデータベース・インスタンスで既存のポリシーを検索するには、「DVSYS.DBA_DV_MAC_POLICYビュー」で説明されている |
例
EXEC DBMS_MACADM.DELETE_MAC_POLICY_CASCADE('Access Locations');
DELETE_POLICY_FACTOR
プロシージャは、Oracle Label Securityラベルの構成からファクタを削除します。
構文
DBMS_MACADM.DELETE_POLICY_FACTOR( policy_name IN VARCHAR2, factor_name IN VARCHAR2);
パラメータ
表12-60 DELETE_POLICY_FACTORのパラメータ
パラメータ | 説明 |
---|---|
|
既存のポリシーの名前。 現行のデータベース・インスタンスで既存のポリシーを検索するには、「DVSYS.DBA_DV_MAC_POLICYビュー」で説明されている |
|
Oracle Label Securityラベルに関連付けられているファクタの名前。 Oracle Label Securityポリシーに関連付けられているファクタを検索するには、「DVSYS.DBA_DV_MAC_POLICY_FACTORビュー」で説明されている |
例
BEGIN DBMS_MACADM.DELETE_POLICY_FACTOR( policy_name => 'Access Locations', factor_name => 'App_Host_Name'); END; /
DELETE_POLICY_LABEL
プロシージャは、Oracle Label Securityポリシーのアイデンティティからラベルを削除します。
構文
DBMS_MACADM.DELETE_POLICY_LABEL( identity_factor_name IN VARCHAR2, identity_factor_value IN VARCHAR2, policy_name IN VARCHAR2, label IN VARCHAR2);
パラメータ
表12-61 DELETE_POLICY_LABELのパラメータ
パラメータ | 説明 |
---|---|
|
ラベルを付けたファクタの名前。 現行のデータベース・インスタンスでOracle Label Securityポリシーに関連付けられている既存のファクタを検索するには、「DVSYS.DBA_DV_MAC_POLICY_FACTORビュー」で説明されている 詳細は、「Label Securityポリシー・ファクタ」を参照してください。 |
|
ラベルを付けたファクタのアイデンティティの値。 現行のデータベース・インスタンスで既存のファクタのアイデンティティを検索するには、「DVSYS.DBA_DV_IDENTITYビュー」で説明されている |
|
既存のポリシーの名前。 現行のデータベース・インスタンスで既存のポリシーを検索するには、「DVSYS.DBA_DV_MAC_POLICYビュー」で説明されている |
|
Oracle Label Securityラベル名。 ファクタ・アイデンティティの既存のポリシー・ラベルを検索するには、「DVSYS.DBA_DV_POLICY_LABELビュー」で説明されている |
例
BEGIN DBMS_MACADM.DELETE_POLICY_LABEL( identity_factor_name => 'App_Host_Name', identity_factor_value => 'Sect2_Fin_Apps', policy_name => 'Access Locations', label => 'Sensitive'); END; /
UPDATE_MAC_POLICY
プロシージャは、ファクタのラベルまたはOracle Label Securityセッション・ラベルを算出する際にラベルのマージに使用されるアルゴリズムを指定します。
構文
DBMS_MACADM.UPDATE_MAC_POLICY( policy_name IN VARCHAR2, algorithm IN VARCHAR2);
パラメータ
表12-62 UPDATE_MAC_POLICY
パラメータ | 説明 |
---|---|
|
既存のポリシーの名前。 現行のデータベース・インスタンスで既存のポリシーを検索するには、「DVSYS.DBA_DV_MAC_POLICYビュー」で説明されている |
|
Oracle Label Securityで2つのラベルをマージしている場合のマージ・アルゴリズム。使用可能なアルゴリズムのリストは、表12-57を参照してください。 ラベルマージ・アルゴリズムの詳細は、『Oracle Label Security管理者ガイド』を参照してください。 |
例
BEGIN DBMS_MACADM.UPDATE_MAC_POLICY( policy_name => 'Access Locations', algorithm => 'LUI'); END; /
表12-63に、DV_OWNER
またはDV_ADMIN
ロールの保護を必要とする一般システム・メンテナンス・アクティビティの実行に使用できる、DBMS_MACADM
PL/SQLパッケージのプロシージャを示します。
表12-63 DBMS_MACADMの無効/有効プロシージャ
プロシージャ | 説明 |
---|---|
|
Oracle Database Vaultに新しい言語を追加します。 |
|
Oracle Database Vaultが有効な場合に、Oracle Data Pump操作を実行する権限をユーザーに付与します。 |
AUTHORIZE_SCHEDULER_USERプロシージャ |
Oracle Database Vaultが有効な場合に、データベース・ジョブをスケジュールする権限をユーザーに付与します。 |
UNAUTHORIZE_DATAPUMP_USERプロシージャ |
|
UNAUTHORIZE_SCHEDULER_USERプロシージャ |
|
ADD_NLS_DATA
プロシージャは、Oracle Database Vaultに新しい言語を追加します。
構文
DBMS_MACADM.ADD_NLS_DATA( language IN VARCHAR );
パラメータ
表12-64 ADD_NLS_DATA
パラメータ | 説明 |
---|---|
|
次のいずれかの設定を入力します。(このパラメータでは大/小文字は区別されません。)
|
例
EXEC DBMS_MACADM.ADD_NLS_DATA('french');
AUTHORIZE_DATAPUMP_USER
プロシージャは、Oracle Database Vaultが有効な場合に、ユーザーがOracle Data Pump操作を実行することを認可します。expdp
とimpdp
の両方のユーティリティに適用されます。Oracle Database Vault環境でOracle Data Pumpを使用するために必要な追加の認可レベルなどの完全な使用法については、「データベース管理者に対するOracle Data Pumpの使用の認可」を参照してください。
構文
DBMS_MACADM.AUTHORIZE_DATAPUMP_USER( user_name IN VARCHAR2, schema_name IN VARCHAR2 DEFAULT NULL, table_name IN VARCHAR2 DEFAULT NULL);
パラメータ
表12-65 AUTHORIZE_DATAPUMP_USER
パラメータ | 説明 |
---|---|
|
権限を付与するOracle Data Pumpユーザーの名前。 Oracle Data Pumpの使用権限( SELECT GRANTEE, GRANTED_ROLE FROM DBA_ROLE_PRIVS WHERE GRANTED_ROLE LIKE '%FULL%' |
|
Oracle Data Pumpユーザーがエクスポートまたはインポートする必要のあるデータベース・スキーマ名。このパラメータを省略すると、データベース内のすべてのスキーマをエクスポートおよびインポートするグローバル権限がユーザーに付与されます。この場合、ユーザーに |
|
|
例
EXEC DBMS_MACADM.AUTHORIZE_DATAPUMP_USER('DP_MGR'); EXEC DBMS_MACADM.AUTHORIZE_DATAPUMP_USER('DP_MGR', 'HR'); EXEC DBMS_MACADM.AUTHORIZE_DATAPUMP_USER('DP_MGR', 'HR', 'EMPLOYEES');
AUTHORIZE_SCHEDULER_USER
プロシージャは、Oracle Database Vaultが有効な場合に、データベース・ジョブをスケジュールする権限をユーザーに付与します。この権限は、データベース・ジョブのスケジュール権限を持つすべてのユーザーに適用されます。この権限には、CREATE JOB
、CREATE ANY JOB
、CREATE EXTERNAL JOB
、EXECUTE ANY PROGRAM
、EXECUTE ANY CLASS
、MANAGE SCHEDULER
が含まれます。Oracle Database Vault環境でデータベース・ジョブをスケジュールするために必要な認可レベルなど、完全な使用情報については「Oracle Database Vault環境でのデータベース・ジョブのスケジュール」を参照してください。
構文
DBMS_MACADM.AUTHORIZE_SCHEDULER_USER( user_name IN VARCHAR2, schema_name IN VARCHAR2 DEFAULT NULL);
パラメータ
表12-66 AUTHORIZE_SCHEDULER_USER
パラメータ | 説明 |
---|---|
|
権限を付与するユーザーの名前。 ジョブのスケジュール権限を持つユーザーのリストを検索するには、データベース・ジョブのスケジュール権限を持つユーザーについて、 |
|
ジョブをスケジュールするデータベース・スキーマの名前。このパラメータを省略すると、データベース内のすべてのスキーマをスケジュールするグローバル権限がユーザーに付与されます。 |
例
次の例では、ユーザーJOB_MGR
にすべてのスキーマでジョブを実行する権限を付与します。
EXEC DBMS_MACADM.AUTHORIZE_SCHEDULER_USER('JOB_MGR');
次の例では、ユーザーJOB_MGR
にHR
スキーマでのみジョブを実行する権限を付与します。
EXEC DBMS_MACADM.AUTHORIZE_SCHEDULER_USER('JOB_MGR', 'HR');
UNAUTHORIZE_DATAPUMP_USER
プロシージャは、AUTHORIZE_DATAPUMP_USER
プロシージャによって付与された権限を取り消します。このプロシージャを実行する場合は、同等のAUTHORIZE_DATAPUMP_USER
プロシージャと設定が完全に一致することを確認してください。
たとえば、次の2つのプロシージャはパラメータが一致するため、機能します。
EXEC DBMS_MACADM.AUTHORIZE_DATAPUMP_USER('DP_MGR'); EXEC DBMS_MACADM.UNAUTHORIZE_DATAPUMP_USER('DP_MGR');
しかし、次のプロシージャはパラメータが一致しないため、UNAUTHORIZE_DATAPUMP_USER
プロシージャは機能しません。
EXEC DBMS_MACADM.AUTHORIZE_DATAPUMP_USER('JSMITH'); EXEC DBMS_MACADM.UNAUTHORIZE_DATAPUMP_USER('JSMITH', 'HR');
構文
DBMS_MACADM.UNAUTHORIZE_DATAPUMP_USER( user_name IN VARCHAR2, schema_name IN VARCHAR2 DEFAULT NULL, table_name IN VARCHAR2 DEFAULT NULL);
パラメータ
表12-67 UNAUTHORIZE_DATAPUMP_USER
パラメータ | 説明 |
---|---|
|
権限を取り消すOracle Data Pumpユーザーの名前。
SELECT RULE_EXPR FROM DVSYS.DBA_DV_RULE_SET WHERE RULE_SET_NAME = 'Allow Oracle Data Pump Operation'; |
|
Oracle Data Pumpユーザーがエクスポートまたはインポート権限を付与されているデータベース・スキーマ名。 |
|
|
例
EXEC DBMS_MACADM.UNAUTHORIZE_DATAPUMP_USER('JSMITH'); EXEC DBMS_MACADM.UNAUTHORIZE_DATAPUMP_USER('JSMITH', 'HR'); EXEC DBMS_MACADM.UNAUTHORIZE_DATAPUMP_USER('JSMITH', 'HR', 'SALARY');
UNAUTHORIZE_SCHEDULER_USER
プロシージャは、AUTHORIZE_SCHEDULER_USER
プロシージャによって付与された権限を取り消します。このプロシージャを実行する場合は、同等のAUTHORIZE_SCHEDULER_USER
プロシージャと設定が完全に一致することを確認してください。
たとえば、次の2つのプロシージャはパラメータが一致するため、機能します。
EXEC DBMS_MACADM.AUTHORIZE_SCHEDULER_USER('JOB_MGR'); EXEC DBMS_MACADM.UNAUTHORIZE_SCHEDULER_USER('JOB_MGR');
しかし、次のプロシージャはパラメータが一致しないため、UNAUTHORIZE_SCHEDULER_USER
プロシージャは機能しません。
EXEC DBMS_MACADM.AUTHORIZE_SCHEDULER_USER('JOB_MGR'); EXEC DBMS_MACADM.UNAUTHORIZE_SCHEDULER_USER('JOB_MGR', 'HR');
構文
DBMS_MACADM.UNAUTHORIZE_SCHEDULER_USER user_name IN VARCHAR2, schema_name IN VARCHAR2 DEFAULT NULL);
パラメータ
表12-68 UNAUTHORIZE_SCHEDULER_USER
パラメータ | 説明 |
---|---|
|
権限を取り消す、ジョブ・スケジュール・ユーザーの名前。
SELECT RULE_EXPR FROM DVSYS.DBA_DV_RULE_SET WHERE RULE_SET_NAME = 'Allow Scheduler Job'; |
|
ユーザーにジョブ・スケジュール権限が付与されているデータベース・スキーマの名前。 |
例
EXEC DBMS_MACADM.UNAUTHORIZE_SCHEDULER_USER('JOB_MGR'); EXEC DBMS_MACADM.UNAUTHORIZE_SCHEDULER_USER('JOB_MGR', 'HR');