GRANT CONNECT THROUGH、信頼済みセッション、およびユーザーの種類 - Teradata Database - Teradata Vantage NewSQL Engine

Teradata Vantage™ SQLデータ制御言語

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Published
2019年3月
Language
日本語
Last Update
2019-10-29
dita:mapPath
ja-JP/jlw1513306913964.ditamap
dita:ditavalPath
ja-JP/jlw1513306913964.ditaval
dita:id
B035-1149
Product Category
Software
Teradata Vantage

WITH TRUST_ONLYオプションが指定されている場合を除き、エンド ユーザーに対し、<Teradata Database>に送信するSQLリクエストの実行または変更を許可しているアプリケーションで、信頼済みセッションを使用しないでください。

GRANT CONNECT THROUGH文は、SQL形式の特別なバージョンのGRANT文です。この文の用途は、指定の信頼済みユーザーを介して、CONNECT THROUGH権限を指定した永久ユーザーまたはアプリケーション ユーザーに付与することです。

これらのユーザーは、次のテーブルで定義されます。

用語 定義
アプリケーション ユーザー GRANT CONNECTプロキシ ログオン権限を付与するアプリケーション ユーザーの名前。

アプリケーション ユーザー名はTeradata Database内では定義されませんが、Teradataオブジェクトの命名規則に従う必要があります。

単一の権限付与リクエストに、最大25個の名前を指定できます。指定した名前は、指定の信頼済みユーザーの付与権限に追加されます。

単一の信頼済みユーザーがログオン権限を付与できるアプリケーション ユーザー名の数に制限はありません。

永久ユーザー Teradata Databaseに定義されているユーザー。

GRANT CONNECT THROUGHリクエストでは、プロキシ ログオン権限が付与されるユーザーの名前になります。

信頼済みユーザーがログオン権限を付与できる永久ユーザーの数に制限はありません。

信頼済みユーザー 事前にTeradata Databaseに定義されている永久ユーザー。このユーザーは、CONNECT THROUGH権限をGRANT CONNECT THROUGHリクエストによって受け取ります。

これにより、信頼済みユーザーには、GRANT CONNECT THROUGHリクエストで指定したプロキシ ユーザーのIDをアサートする能力が付与されます。

アプリケーション ユーザーと永久ユーザーは、集合的にプロキシ ユーザーと呼ばれます。

信頼済みユーザーのセッションを使用してTeradata Databaseに接続するユーザーは、すべてプロキシ ユーザーです。

プロキシ接続はTeradata Databaseのセッションで、プロキシ ユーザーの権限とプロファイル属性が使用されます。

性能管理API (MonitorSessionやAbortSessionなど)は、信頼済みユーザー名を使用して、セッションを識別します。

Teradata Active System Managementルールの実施では、永久プロキシ ユーザーについては、ユーザー名、アカウント、プロファイルに基づくルール制限は、プロキシ ユーザーの名前、アカウント、プロファイルに基づきます。

アプリケーション プロキシ ユーザーでは、ユーザー名別のルール制限は信頼済みユーザーの名前に基づきます。アプリケーション プロキシ ユーザーにプロファイルがある場合、プロファイル別の制限はプロキシ ユーザーのプロファイルに基づき、アカウント名別の制限はプロファイル アカウント名に基づきます。アプリケーション プロキシ ユーザーにプロファイルがない場合、アカウントとプロファイルに基づく制限は、信頼済みユーザー アカウントとプロファイルに基づきます。

プロキシ ユーザー型 権限とセッションの属性
永久ユーザー
  • 作成されたオブジェクトの自動的な権限は、永久プロキシ ユーザーIDに付与されます。
  • ログオン ユーザーに課される固定領域の課金は、永久プロキシ ユーザーIDに課されます。
  • 永久ユーザーのプロファイル属性は、信頼済みセッションに自動的に割り当てられます。プロファイル属性は、ユーザーに割り当てられたプロファイルから、またはユーザーから直接取得されます。これらのプロファイル属性を以下に示します。
    • デフォルト アカウント
    • デフォルト データベース
    • SPOOL領域
    • 一時領域
    • セキュリティ制約
    • クエリー バンド
アプリケーション ユーザー
  • 作成されたオブジェクトに対して、自動的に権限は付与されません。アプリケーション プロキシ ユーザーはマップされていない外部ユーザーと同じようになります。アプリケーション プロキシ ユーザーはロール権限に基づいて既存のデータベース内にテーブル オブジェクトを作成できますが、アプリケーション プロキシ ユーザーに対する自動的に権限は付与はありません。データベースの所有者は、アプリケーション ユーザーにより作成されたオブジェクトを削除できます。
  • ログオン済みアプリケーション プロキシ ユーザーには、固定領域はありません。固定領域の課金を「ログオン ユーザー」に課そうとするアクションは、いずれも失敗します。
  • アプリケーション プロキシ ユーザーにプロファイルが割り当てられている場合、セッション属性はプロファイルの属性に設定されます。プロファイルで指定されていない属性は、信頼済みユーザーの値に設定されます。以下のプロファイル属性は、信頼済みセッションに自動的に割り当てられます。
    • デフォルト アカウント
    • デフォルト データベース
    • SPOOL領域
    • 一時領域
    • セキュリティ制約
    • クエリー バンド

    アプリケーション プロキシ ユーザーにプロファイルがある場合、一時領域とスプール領域の使用率はプロキシ ユーザーに集積され、制限範囲はプロキシ ユーザーのプロファイルに基づきます。

    アプリケーション プロキシ ユーザーは、それらのユーザーの名前が同じでも、信頼済みユーザーに対して固有になります。一時領域とスプール領域の使用率の累積は、これらのプロキシ ユーザーごとに個別です。

    アプリケーション プロキシ ユーザーにプロファイルを割り当てない場合、セッション属性は信頼済みユーザーの属性のままになります。

次に示すビルトイン関数は、プロキシ接続に関連するセッションの値についての情報を返します。
  • USER関数は、そのセッションの信頼済みユーザーの名前を返します。
  • CURRENT_USER関数は、ユーザーがプロキシ接続の状態にある場合プロキシ ユーザー名を返します。それ以外の場合、CURRENT_USER関数はセッションのユーザー名を返します。
  • ROLE関数は、信頼済みユーザーの現在のロール名を返します。
  • CURRENT_ROLE関数は、ユーザーがプロキシ接続の状態にある場合プロキシ ユーザーの現在のロールを返します。それ以外の場合は、信頼済みユーザーのロール名を返します。

詳細は、<Teradata Vantage™ SQL関数、式および述部、B035-1145>を参照してください。

IPアドレスによる制限などのログオン制限が設定されている場合、システムはその制限を信頼済みユーザーのログオンにのみ強制します。

このような制限は、プロキシ ユーザー名がセッションにアサートされているときには強制されません。