「Grant Debugging Privileges」ダイアログ

「Grant Debugging Privileges」ダイアログでは、PL/SQLデバッグが可能になるように、必要な権限をユーザーに簡単に付与できます。

「PL/SQLデバッグの設定」に示されているように、PL/SQLのデバッグが可能になる前に、SYSDBAによってユーザーに付与される必要がある権限があります。たとえば、Oracle Database 10gリリース1 (10.1)以降では、DEBUG CONNECT SESSIONDEBUG ANY PROCEDUREの両方を付与する必要があります。

Oracle Database 12.1以降では、PL/SQLをデバッグするために、IPアドレスおよびポート範囲への明示的なアクセス権を付与する追加の権限も必要です。これらの権限は、DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACEパッケージ・プロシージャを使用して付与されます。同じIPの複数のポート範囲に対する権限を付与するには、このダイアログを複数回実行し、毎回異なるポート範囲を指定します。このダイアログの前回の実行から付与されたすべてのポート範囲権限が有効です。

関連項目

PL/SQLデバッグの設定

「Grant Debugging Privileges」ダイアログの起動

「Grant Debugging Privileges」ダイアログを開くには、サーバー・エクスプローラでSYSDBAとして、デバッグ対象のPL/SQLがあるデータベースに接続します。次に、権限を付与する必要があるユーザーを表すユーザー・ノードまたはスキーマ・ノードを見つけます。ノードのコンテキスト・メニューから、「Grant Debugging Privileges」を選択します。このコンテキスト・メニュー項目は、SYSDBA接続でのみ表示されます。

「Grant Debugging Privileges」ダイアログは次のように表示されます:

「Grant Debugging Privileges」ダイアログの使用

「Grant Debugging Privileges」ダイアログには、次のコントロールがあります:

コントロール 説明

IP Address

Visual StudioがインストールされているコンピュータのIPアドレスを指定します。このコントロールは、Oracle Database 12.1以降に接続している場合にのみ表示されます。詳細は、「PL/SQLデバッグ・オプション」に関する項を参照してください。

Starting Port Number

Visual Studioがインストールされているコンピュータのポート番号の範囲で開始ポート番号を指定します。このコントロールは、Oracle Database 12.1以降に接続している場合にのみ表示されます。詳細は、「PL/SQLデバッグ・オプション」に関する項を参照してください。

Ending Port Number

Visual Studioがインストールされているコンピュータのポート番号の範囲で終了ポート番号を指定します。このコントロールは、Oracle Database 12.1以降に接続している場合にのみ表示されます。詳細は、「PL/SQLデバッグ・オプション」に関する項を参照してください。

「Preview SQL」ボタン

このダイアログで実行されるSQL文を表示します。

OK

SQL文を実行してデバッグ権限を付与します。

Cancel

ダイアログを閉じます。SQL文は実行されません。

ヘルプ

このヘルプ・ページを起動します。

権限の取消し

このダイアログによって付与される権限は、「Grant/Revoke Privileges」ダイアログを使用して取り消すことができます。Oracle Database 12.1以降ではDBMS_NETWORK_ACL_ADMIN.REMOVE_HOST_ACEパッケージ・プロシージャもSYSDBAとして実行することでも取り消すことができます。

次に例を示します

BEGIN
   DBMS_NETWORK_ACL_ADMIN.REMOVE_HOST_ACE(
     HOST => '255.255.255.25',
     LOWER_PORT => 61000,
     UPPER_PORT => 65000,
     ACE => XS$ACE_TYPE(PRIVILEGE_LIST => XS$NAME_LIST('jdwp'),
                        PRINCIPAL_NAME => 'HR',
                        PRINCIPAL_TYPE => XS_ACL.PTYPE_DB));
 END;

ホスト、下位ポート、上位ポートおよびプリンシパル名を、「Grant/Revoke Privileges」ダイアログへの以前のコールで指定された値に置き換えます。