DBMS_MACADM
PL/SQLパッケージは、コマンド・ルールを設定するプロシージャを提供します。
表15-1に、DBMS_MACADM
パッケージ内のプロシージャを示します。DV_OWNER
ロールまたはDV_ADMIN
ロールを付与されているユーザーのみがこれらのプロシージャを使用できます。
表15-1 DBMS_MACADMのコマンド・ルール構成プロシージャ
プロシージャ | 説明 |
---|---|
コマンド・ルールを作成し、ルール・セットに関連付けて、ルール・セットによるコマンド・ルールのルール・チェックが有効化されるようにします。 |
|
コマンド・ルールの宣言を削除します。 |
|
コマンド・ルールの宣言を更新します。 |
関連項目:
コマンド・ルールの詳細は、「コマンド・ルールの構成」を参照してください
コマンド・ルール・プロシージャで使用できる一連の汎用ユーティリティ・プロシージャについては、「Oracle Database VaultユーティリティのAPI」を参照してください
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);
パラメータ
表15-2 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);
パラメータ
表15-3 DELETE_COMMAND_RULEのパラメータ
パラメータ | 説明 |
---|---|
|
コマンド・ルールで保護されるSQL文。 使用可能なコマンド・ルールを検索するには、 |
|
このコマンド・ルールを適用するデータベース・スキーマ。 現行のデータベース・インスタンスで使用可能なユーザーを確認するには、『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);
パラメータ
表15-4 UPDATE_COMMAND_RULEパラメータ
パラメータ | 説明 |
---|---|
|
保護するSQL文。 次の項目も参照してください。
|
|
このコマンド・ルールに関連付けるルール・セットの名前。 現行のデータベース・インスタンスで既存のルール・セットを検索するには、「Oracle Database Vaultのデータ・ディクショナリ・ビュー」で説明されている |
|
このコマンド・ルールを適用するデータベース・スキーマ。 使用可能なユーザーを確認するには、『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; /