信頼済みセッション機能を使用するアプリケーションは、信頼済みのリクエストと、信頼済みでないリクエストの両方のリクエストを実行依頼すると考えられます。どのリクエストが信頼できて、どのリクエストが信頼できないかを把握しているのは、そのアプリケーションであって、Teradata Databaseではありません。Teradata Databaseは、ログオン ユーザーにWITH TRUST_ONLYオプションが設定されている場合には、PROXYUSERを指定したSET QUERY_BANDリクエストが信頼済みのリクエストであるかどうかを検証するだけです。
サーバー ソフトウェアでは、信頼済みユーザーがTRUST_ONLY権限を所持するように設定するGRANT CONNECT THROUGHリクエストを使用して、信頼済みのリクエストを強制します。信頼済みユーザーにWITH TRUST_ONLYオプションを指定すると、Teradata Databaseはプロキシ ユーザーを信頼済みに設定するリクエストを許可しますが、それ以外の場合はそのリクエストをアボートして、リクエスト元にエラーを返します。
中間階層アプリケーションが、次に示すPROXYUSERSを指定したSET QUERY_BANDリクエストを実行依頼したとします。
SET QUERY_BAND = 'PROXYUSER=client787';
考えられる結果は以下のとおりです。このリクエストが信頼済みであるかどうか、また、このリクエストを実行依頼したアプリケーション ユーザーに付与されているCONNECT THROUGH権限の内容によって結果が異なります。
信頼済みユーザーの権限 | オプション パーセルの信頼済みフラグ | リクエストの状態 |
---|---|---|
TRUST_ONLY権限が付与されている | Yに設定 | 信頼済み。 SET QUERY_BAND … PROXYUSERリクエストが許可されます。 |
Nに設定 | 信頼済みでない。 SET QUERY_BAND … PROXYUSERリクエストがアボートされます。 |
|
TRUST_ONLY権限が付与されていない | Yに設定 | 信頼済み、信頼済みでない、のどちらでもありません。 Teradata Databaseはフラグの設定を無視します。 |
Nに設定 | 信頼済み、信頼済みでない、のどちらでもありません。 Teradata Databaseはフラグの設定を無視します。 これはデフォルトの設定です。 |