データベース特権
メッセージング・エンジンがそのデータ・ストアを使用するためには、メッセージング・エンジンが使用するデータベース・ユーザー ID に、メッセージング・エンジンがデータ・ストアのテーブルにアクセスするための十分な特権を持たせる必要があります。 メッセージング・エンジンがデータ・ストア・テーブルを自動的に作成するようにしたい場合は、メッセージング・エンジン・ユーザー ID に追加の特権が必要となります。
次の表では、データ・ストアにアクセスし、データ・ストア・テーブルを作成するためにメッセージング・エンジンのユーザー ID が必要とするデータベース特権について説明します。
データベース管理システム | メッセージング・エンジンがデータ・ストア・テーブルを使用するために必要な最小の特権。 | メッセージング・エンジンがデータ・ストア・テーブルを作成するために必要な追加の特権。 |
---|---|---|
DB2® | メッセージング・エンジンのユーザー ID には、テーブルに対する SELECT、INSERT、UPDATE、および DELETE 特権が備わっている必要があります。 | メッセージング・エンジンのユーザー ID には、データベースに対する CREATETAB 権限およびテーブル・スペースの USE 特権に加えて、スキーマに対する CREATEIN 特権が備わっている必要があります。 |
Oracle | メッセージング・エンジンのユーザー ID には、データベースに接続するために少なくとも SESSION 特権が必要です。同一のユーザー ID がデータ・ストアのスキーマ およびデータベースに接続するメッセージング・エンジンの両方を所有している場合、メッセージング・エンジンにはテーブルを操作するための十分な特権が備わっています。これらの両方を所有していない場合、メッセージング・エンジンは、データ・ストアを構成するテーブルに対する SELECT、INSERT、UPDATE、および DELETE オブジェクト特権と、TRUNCATE TABLE ステートメントの使用を可能にする DROP ANY TABLE システム特権を必要とします。 | メッセージング・エンジンのユーザー ID には、データ・ストアのスキーマでリレーショナル・テーブルと索引を生成するための十分な特権が必要です。メッセージング・エンジンには、そのスキーマの所有者のデフォルト・テーブル・スペース内にスペース割り当て量も必要となります。 |
SQL Server | SQL サーバーおよび Windows の認証のために SQL サーバーを構成します。 これにより、認証は SQL サーバーのログイン ID およびパスワードを基にして行われます。 メッセージング・エンジンのユーザー ID は、テーブルの所有者、または TRUNCATE TABLE ステートメントを発行するための十分な権限を持つグループのメンバーのいずれかになります。 | メッセージング・エンジンのユーザー ID には、CREATE TABLE ステートメント特権が必要です。 |
Sybase | メッセージング・エンジンのユーザー ID は、テーブルの所有者、または TRUNCATE TABLE ステートメントを発行するための十分な権限を持つグループのメンバーのいずれかになります。 | メッセージング・エンジンのユーザー ID には、CREATE TABLE 許可が必要です。 |
Informix® | メッセージング・エンジン・ユーザー ID には、データベースに対する CONNECT 特権が必要です。また、テーブルに対 する SELECT、INSERT、UPDATE およ び DELETE 権限も必要です。 | メッセージング・エンジン・ユーザー ID には、データベースに対する RESOURCE 特権が必要です。 |
Derby | ユーザー認証を使用可能にする場合、メッセージング・エンジンのユーザー ID がデータベースにアクセスすることを許可する必要があります。 要確認: メッセージング・エンジンによって生成されるデフォルト・データベースのセキュリティー・メカニズムは使用可能になっていません。
|
追加の特権は必要ありません。 |
データベース・ユーザー ID に TRUNCATE TABLE 権限を付与しない場合、テーブルを切り捨てる代わりに、メッセージング・エンジンで強制的に行を個別に削除することができます。メッセージング・エンジンが強制的に行を個別に削除するようにするには、メッセージング・エンジンのカスタム・プロパティーとして sib.msgstore.jdbcUseDeleteInsteadOfTruncateAtStartup を true に設定します。
注: TRUNCATE の代わりに DELETE を使用すると、データ・ストア中に非パーシスタント・メッセージが多数ある場合に、始動が遅くなります。