翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Authorization
認可プロセスでは、データベースマネージャーは認証されたユーザーの認可 ID に関する情報を取得します。認可 ID は、ユーザーがアクセスできるデータベースオブジェクトなど、ユーザーが実行できるデータベースオペレーションを示します。Db2 内で明示的に宣言されたアクセス許可により、ユーザーは特定のアクションを実行できます。
認可 ID の場合、アクセス許可はさまざまなレベルで付与できます。
-
プライマリ – プライマリアクセス許可は、認可 ID に直接付与されます。
-
セカンダリ – セカンダリアクセス許可は、認可 ID がメンバーであるグループとロールに付与されます。
-
パブリック – パブリックレベルは、組織内のすべてのユーザーを表す特別な Db2 グループです。
-
コンテキスト依存 – これらのアクセス許可は、信頼されたコンテキストロールに付与されます。
Db2 権限レベル
Db2 は、次のレベルで権限を管理します。
-
インスタンス、またはシステム、レベル:
SYSADM
、SYSCTRL
、SYSMAINT
、SYSMON
-
データベースレベル:
DBADM
(SQLADM
EXPLAIN
)、SECADM
(WLMADM
)ACCESSCTRL
、DATAACCESS
-
スキーマレベル:
SCHEMAADM
(LOAD
)ACCESSCTRL
、、DATAACCES
S -
追加のスキーマレベルの権限
-
-

Db2 は、以下の追加のスキーマレベルの権限をサポートしています。
-
SELECTIN
では、ユーザーはスキーマで定義されたすべてのテーブルまたはビューから行を取得できます。 -
INSERTIN
では、ユーザーは行を挿入し、スキーマで定義されたすべてのテーブルまたはビューでIMPORT
ユーティリティを実行できます。 -
UPDATEIN
では、ユーザーはスキーマで定義されたすべてのテーブルまたは更新可能なビューでUpdate
ステートメントを実行できます。 -
DELETEIN
では、ユーザーはスキーマで定義されたすべてのテーブルまたは更新可能なビューから行を削除できます。 -
EXECUTEIN
では、ユーザーはスキーマで定義されたすべてのユーザー定義関数、メソッド、プロシージャ、パッケージ、またはモジュールを実行できます。 -
CREATEIN
では、ユーザーはスキーマ内にオブジェクトを作成できます。 -
ALTERIN
では、ユーザーはスキーマ内のオブジェクトを変更できます。 -
DROPIN
では、ユーザーはスキーマ内からオブジェクトを削除できます。
認可 ID
Db2 認可 ID は、以下で構成されます。
-
認可 ID タイプ
-
個々のユーザー (
U
) -
グループ (
G
) -
ロール (
R
) -
パブリック (
P
)
-
-
認可 ID 値
権限と権限を関連付けることができる認可 ID は、Db2 認可の確認とともに識別に使用されます。
以下は、Db2 で一般的に使用されるプライマリ認可 ID 用語です。
-
システム認可 ID –
CONNECT
処理中のCONNECT
権限の確認など、最初の認可チェックを実行するために使用される認可 ID。 -
セッション認可 ID –
CONNECT
処理中に実行された初期チェックの後、セッション認可チェックに使用される認可 ID。セッション認可 ID の現在の値を表示するには、SESSION_USER
特別なレジスターを使用します。 -
ステートメント認可 ID – SQL ステートメントの認可要件に使用される認可 ID (グループまたはロールの関連付けられたセカンダリ認可 IDs とともに)。これは、必要に応じてオブジェクトの所有権を判断するためにも使用されます。SQL ステートメントのタイプと発行先のコンテキストによって異なる場合があります。
権限と権限は、 GRANT
や REVOKE
ステートメントなどの明示的なメカニズム、またはオブジェクトの所有権を通じて取得した権限などの暗黙的なメカニズムによって取得されます。また、複数の処理コンテキストを通じて一時的に取得することもできます。たとえば、ビューへのアクセス権が付与され、そのビュー定義のオブジェクトへのアクセスが暗黙的に許可されます。また、パッケージに対する EXECUTE
権限により、そのパッケージ内の静的 SQL にアクセスできます。一時的な権限と特権を取得するもう 1 つの方法は、信頼されたコンテキストを使用することです。
信頼できるコンテキスト
信頼されたコンテキストは、データベースと外部アプリケーションサーバーまたは別のデータベースサーバーとの間の信頼関係を定義するデータベースオブジェクトです。信頼関係は、次の信頼属性に基づいています。
-
IP アドレス
-
システム認可 ID
-
データ通信の暗号化レベル
接続が、定義された信頼されたコンテキストオブジェクト内の信頼属性と一致する場合、信頼された接続が確立されます。信頼された接続には 2 つのタイプがあります。
-
暗黙的な信頼された接続 – 暗黙的な信頼された接続により、ユーザーは、その信頼された接続定義の範囲外では利用できないロールを継承できます。接続のセッション認可 ID には、信頼されたコンテキスト定義で宣言されたロールへの一時的なメンバーシップが付与されます。
次の図は、1 つの IP アドレスからの接続のみを許可する暗黙的な信頼された接続の例を示しています。
-
ロール
dbconnrole
が作成され、データベースへの接続が付与されます。信頼されたコンテキストctximpl
は、IP アドレス10.10.10.1
とデフォルトのロールauthid
ABC
を使用して接続に基づいて作成されますdbconnrole
。 -
ユーザーは IP アドレス からデータベースに接続
ABC
できます10.10.10.1
。 -
ユーザーは IP アドレス から接続
ABC
できません10.10.10.2
。
-
-
明示的な信頼された接続 – 明示的な信頼された接続により、信頼されたアプリケーションサーバーまたは別の Db2 データベースサーバーは、既存の接続の現在のユーザー ID を効率的に切り替えることができます。アプリケーションサーバーは、明示的な信頼リクエストを使用して元の接続を確立します。信頼が確立されると、アプリケーションサーバーはデータベースサーバーにリクエストを発行して、新しい作業単位のセッション認可 ID を変更できます。初期接続リクエストの実行に使用される ID には、サーバーに対する
CONNECT
権限のみが必要です。明示的な信頼された接続は、テーブルなどのさまざまなデータベースオブジェクト間で異なるアクセスパターンのセットを持つ複数のユーザーに代わってデータベースリクエストを発行する必要がある中間層サーバーがある場合に役立ちます。データベースサーバー上に作成された信頼されたコンテキストオブジェクトにより、中間層サーバーはデータベースへの明示的な信頼された接続を確立し、データベースサーバーに再認証することなく、接続の現在のユーザー ID を対応するユーザー ID に切り替えることができます。ユーザー認可 ID のデータベースオブジェクトに付与された権限に基づいて、ユーザーは引き続きオペレーションを実行し、特定のタスクを実行するユーザーの実際の ID を保持できます。
次の図は、
USER1
、、USER2
およびUSER3
がすべて を介して接続する明示的な信頼された接続の例を示していますauthid
APPID
。-
信頼されたコンテキスト
ctxexpl
は、ユーザーUSER1
、、USER2
および10.10.10.1
の IP アドレスauthid
APPID
からの を使用した接続に基づいて作成されますUSER3
。 -
ユーザーは中間層サーバーに接続します。
-
信頼された接続は を使用して確立されます
APPID
。
-