134 DBMS_RESOURCE_MANAGER_PRIVS

DBMS_RESOURCE_MANAGER_PRIVSパッケージは、リソース・マネージャに関連付けられている権限をメンテナンスします。

この章のトピックは、次のとおりです:

参照:

データベース・リソース・マネージャの使用方法の詳細は、『Oracle Database管理者ガイド』を参照してください。

134.1 DBMS_RESOURCE_MANAGER_PRIVSサブプログラムの要約

この表は、DBMS_RESOURCE_MANAGER_PRIVSサブプログラムを示し、簡単に説明しています。

表134-1 DBMS_RESOURCE_MANAGER_PRIVSパッケージのサブプログラム

サブプログラム 説明

GRANT_SWITCH_CONSUMER_GROUPプロシージャ

リソース・コンシューマ・グループに切替え権限を付与します。

GRANT_SYSTEM_PRIVILEGEプロシージャ

システム権限を付与します。

REVOKE_SWITCH_CONSUMER_GROUPプロシージャ

リソース・コンシューマ・グループから切替え権限を取り消します。

REVOKE_SYSTEM_PRIVILEGEプロシージャ

システム権限を取り消します。

134.1.1 GRANT_SWITCH_CONSUMER_GROUPプロシージャ

このプロシージャは、リソース・コンシューマ・グループに切替え権限を付与します。

構文

DBMS_RESOURCE_MANAGER_PRIVS.GRANT_SWITCH_CONSUMER_GROUP (
   grantee_name   IN VARCHAR2, 
   consumer_group IN VARCHAR2, 
   grant_option   IN BOOLEAN);

パラメータ

表134-2 GRANT_SWITCH_CONSUMER_GROUPプロシージャのパラメータ

パラメータ 説明

grantee_name

権限を付与されるユーザーまたはロールの名前。

consumer_group

コンシューマ・グループの名前。

grant_option

権限を付与されたユーザーが他のユーザーにアクセス権を付与できる場合はTRUE、そうでない場合はFALSE

使用上の注意

ユーザーに対して特定のコンシューマ・グループに切替え許可を付与すると、そのユーザーは、即時に現行のコンシューマ・グループを新規のコンシューマ・グループに切り替えることができます。

ロールに対して特定のコンシューマ・グループに切替え許可を付与すると、そのロールを付与され、そのロールを使用可能にしたユーザーは、即時に現行のコンシューマ・グループを新規のコンシューマ・グループに切り替えることができます。

PUBLICに対して特定のコンシューマ・グループに切替え許可を付与すると、すべてのユーザーがそのコンシューマ・グループに切り替えることができます。

grant_optionパラメータがTRUEの場合、コンシューマ・グループに対する切替え権限が付与されたユーザーは、そのコンシューマ・グループに対する切替え権限を他のユーザーにも付与できます。

ユーザーの初期のコンシューマ・グループを設定するには、そのグループに対する切替え権限をユーザーに付与する必要があります。

BEGIN 
DBMS_RESOURCE_MANAGER_PRIVS.GRANT_SWITCH_CONSUMER_GROUP ( 
 'scott', 'mail_maintenance_group', true); 
DBMS_RESOURCE_MANAGER.CREATE_PENDING_AREA(); 
DBMS_RESOURCE_MANAGER.set_consumer_group_mapping( 
  dbms_resource_manager.oracle_user, 'scott','mail_maintenance_group'); 
DBMS_RESOURCE_MANAGER.SUBMIT_PENDING_AREA(); 
END; 
/ 

134.1.2 GRANT_SYSTEM_PRIVILEGEプロシージャ

このプロシージャは、ユーザーまたはロールにシステム権限を付与します。

構文

DBMS_RESOURCE_MANAGER_PRIVS.GRANT_SYSTEM_PRIVILEGE (
   grantee_name    IN VARCHAR2, 
   privilege_name  IN VARCHAR2 DEFAULT 'ADMINISTER_RESOURCE_MANAGER',             
   admin_option    IN BOOLEAN);

パラメータ

表134-3 GRANT_SYSTEM_PRIVILEGEプロシージャのパラメータ

パラメータ 説明

grantee_name

権限を付与されるユーザーまたはロールの名前。

privilege_name

付与される権限の名前。

admin_option

admin_optionオプションの付いた権限付与の場合はTRUE、そうでない場合はFALSE

使用上の注意

Oracleでは現在、リソース・マネージャに対するシステム権限はADMINISTER_RESOURCE_MANAGERのみ提供しています。データベース管理者には、ADMINオプションを伴うこのシステム権限があります。その権限の付与と取消しは、ユーザーまたはロールに対して行うことができます。ADMINオプションを伴うシステム権限を付与されたユーザーは、この権限を他のユーザーにも付与できます。

次のコールは、scottというユーザーに対してADMINオプションを付けずにこの権限を付与します。

BEGIN
DBMS_RESOURCE_MANAGER_PRIVS.GRANT_SYSTEM_PRIVILEGE (
 grantee_name => 'scott',
 privilege_name => 'ADMINISTER_RESOURCE_MANAGER',
 admin_option => FALSE);
END;
/

134.1.3 REVOKE_SWITCH_CONSUMER_GROUPプロシージャ

このプロシージャは、リソース・コンシューマ・グループから切替え権限を取り消します。

構文

DBMS_RESOURCE_MANAGER_PRIVS.REVOKE_SWITCH_CONSUMER_GROUP (
   revokee_name   IN VARCHAR2, 
   consumer_group IN VARCHAR2);

パラメータ

表134-4 REVOKE_SWITCH_CONSUMER_GROUPプロシージャのパラメータ

パラメータ 説明

revokee_name

アクセス権を取り消すユーザーまたはロールの名前。

consumer_group

コンシューマ・グループの名前。

使用上の注意

特定のコンシューマ・グループに対する切替え権限をユーザーから取り消した後で、そのユーザーがそのコンシューマ・グループに切り替えようとしても失敗します。

ユーザーから初期のコンシューマ・グループを取り消した場合、そのユーザーは、ログイン時に自動的にDEFAULT_CONSUMER_GROUPコンシューマ・グループに所属します。

コンシューマ・グループに対する切替え権限をロールから取り消すと、そのロールを介してのみコンシューマ・グループに対する切替え権限を持っていたユーザーは、そのコンシューマ・グループに切り替えることができなくなります。

コンシューマ・グループに対する切替え権限をPUBLICから取り消すと、それまでPUBLICを介してのみコンシューマ・グループを使用できたユーザーは、そのコンシューマ・グループに切り替えることができなくなります。

次の例は、mail_maintenance_groupに切替え権限をscottから取り消します。

BEGIN
DBMS_RESOURCE_MANAGER_PRIVS.REVOKE_SWITCH_CONSUMER_GROUP (
 'scott', 'mail_maintenance_group');
END;
/

134.1.4 REVOKE_SYSTEM_PRIVILEGEプロシージャ

このプロシージャは、ユーザーまたはロールからシステム権限を取り消します。

構文

DBMS_RESOURCE_MANAGER_PRIVS.REVOKE_SYSTEM_PRIVILEGE (
   revokee_name   IN VARCHAR2, 
   privilege_name IN VARCHAR2 DEFAULT 'ADMINISTER_RESOURCE_MANAGER');

パラメータ

表134-5 REVOKE_SYSTEM_PRIVILEGEプロシージャのパラメータ

パラメータ 説明

revokee_name

権限を取り消すユーザーまたはロールの名前。

privilege_name

取り消す権限の名前。

次のコールは、ユーザー名scottからADMINISTER_RESOURCE_MANAGERを取り消します。

BEGIN
DBMS_RESOURCE_MANAGER_PRIVS.REVOKE_SYSTEM_PRIVILEGE ('scott');
END;
/