プライマリ・コンテンツに移動
Oracle® Database Vault管理者ガイド
12cリリース1 (12.1)
B71286-08
目次へ移動
目次
索引へ移動
索引

前
次

15 Oracle Database Vaultコマンド・ルールのAPI

DBMS_MACADM PL/SQLパッケージは、コマンド・ルールを設定するプロシージャを提供します。

表15-1に、DBMS_MACADMパッケージ内のプロシージャを示します。DV_OWNERロールまたはDV_ADMINロールを付与されているユーザーのみがこれらのプロシージャを使用できます。

表15-1 DBMS_MACADMのコマンド・ルール構成プロシージャ

プロシージャ 説明

CREATE_COMMAND_RULEプロシージャ

コマンド・ルールを作成し、ルール・セットに関連付けて、ルール・セットによるコマンド・ルールのルール・チェックが有効化されるようにします。

DELETE_COMMAND_RULEプロシージャ

コマンド・ルールの宣言を削除します。

UPDATE_COMMAND_RULEプロシージャ

コマンド・ルールの宣言を更新します。

関連項目:

CREATE_COMMAND_RULEプロシージャ

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のパラメータ

パラメータ 説明

command

保護するSQL文。

次の項目も参照してください。

rule_set_name

このコマンド・ルールに関連付けるルール・セットの名前。

現行のデータベース・インスタンスで既存のルール・セットを検索するには、「DVSYS.DBA_DV_RULE_SETビュー」で説明されているDVSYS.DBA_DV_RULE_SETビューに問い合せます。

object_owner

このコマンド・ルールを適用するデータベース・スキーマ。SELECTINSERTUPDATEDELETEおよびEXECUTE文以外は、ワイルドカード%を使用できます。

使用可能なユーザーを確認するには、『Oracle Databaseリファレンス』で説明されているDBA_USERSビューを問い合せます。

詳細は、「コマンド・ルールの作成または編集」の「オブジェクト所有者」も参照してください。

object_name

オブジェクト名。(ワイルドカード%を使用できます。コマンド・ルールで保護されるオブジェクトの詳細は、「コマンド・ルールの作成または編集」の「オブジェクト名」を参照。)

使用可能なオブジェクトを確認するには、『Oracle Databaseリファレンス』で説明されているALL_OBJECTSビューを問い合せます。

enabled

DBMS_MACUTL.G_YES(Yes)では、コマンド・ルールが有効になり、DBMS_MACUTL.G_NO(No)では無効になります。デフォルト値はDBMS_MACUTL.G_YESです。

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プロシージャ

DELETE_COMMAND_RULEプロシージャは、コマンド・ルールの宣言を削除します。

構文

DBMS_MACADM.DELETE_COMMAND_RULE(
  command      IN VARCHAR2, 
  object_owner IN VARCHAR2, 
  object_name  IN VARCHAR2); 

パラメータ

表15-3 DELETE_COMMAND_RULEのパラメータ

パラメータ 説明

command

コマンド・ルールで保護されるSQL文。

使用可能なコマンド・ルールを検索するには、「DVSYS.DBA_DV_COMMAND_RULEビュー」で説明されているDVSYS.DBA_DV_COMMAND_RULEビューに問い合せます

object_owner

このコマンド・ルールを適用するデータベース・スキーマ。

現行のデータベース・インスタンスで使用可能なユーザーを確認するには、『Oracle Databaseリファレンス』で説明されているDBA_USERSビューを問い合せます。

詳細は、「コマンド・ルールの作成または編集」の「オブジェクト所有者」も参照してください。

object_name

オブジェクト名。(ワイルドカード%を使用できます。コマンド・ルールで保護されるオブジェクトの詳細は、「コマンド・ルールの作成または編集」の「オブジェクト名」を参照。)

使用可能なオブジェクトを確認するには、『Oracle Databaseリファレンス』で説明されているALL_OBJECTSビューを問い合せます。

BEGIN
 DBMS_MACADM.DELETE_COMMAND_RULE(
  command      => 'SELECT', 
  object_owner => 'SYSADM', 
  object_name  => 'EMP_DATA'); 
END;
/

UPDATE_COMMAND_RULEプロシージャ

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パラメータ

パラメータ 説明

command

保護するSQL文。

次の項目も参照してください。

rule_set_name

このコマンド・ルールに関連付けるルール・セットの名前。

現行のデータベース・インスタンスで既存のルール・セットを検索するには、「Oracle Database Vaultのデータ・ディクショナリ・ビュー」で説明されているDVSYS.DBA_DV_RULE_SETビューに問い合せます。

object_owner

このコマンド・ルールを適用するデータベース・スキーマ。

使用可能なユーザーを確認するには、『Oracle Databaseリファレンス』で説明されているDBA_USERSビューを問い合せます。詳細は、「コマンド・ルールの作成または編集」の「オブジェクト所有者」も参照してください。

object_name

オブジェクト名。(ワイルドカード%を使用できます。コマンド・ルールで保護されるオブジェクトの詳細は、「コマンド・ルールの作成または編集」の「オブジェクト名」を参照。)

使用可能なオブジェクトを確認するには、『Oracle Databaseリファレンス』で説明されているALL_OBJECTSビューを問い合せます。

enabled

DBMS_MACUTL.G_YES(Yes)では、コマンド・ルールが有効になり、DBMS_MACUTL.G_NO(No)では無効になります。

enabledのデフォルトは設定済の値で、DVSYS.DBA_DV_COMMAND_RULEデータ・ディクショナリ・ビューに問い合せることで確認できます。

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;
/