プロキシ ユーザーがTeradata Databaseにログオンする際は、以下のようなSET QUERY_BAND文を発行するために信頼済みユーザーアプリケーションを設定する必要があります。
SET QUERY_BAND = 'PROXYUSER=appluser;PROXYROLE=<role>;’ FOR SESSION; SEL cola, colb FROM database1.table1; SEL cola, colb FROM database2.table2; ... SET QUERY_BAND = NONE FOR SESSION;
システムは、SET QUERY_BAND文を調べるとともに、元のGRANT CONNECT THROUGH文のロール指定も調べてオペラント ロールを判別します。
SET QUERY_BAND文 | GRANT CONNECT THROUGH文 | 信頼済みセッションにより使用されるロール |
---|---|---|
PROXYROLEが省略されている | WITHOUT ROLE | 一致する永続データベース ユーザーのデフォルト ロール。 |
WITH ROLE <role(s)> | ユーザーのGRANT CONNECT THROUGH文でプロキシ ユーザーに対して指定されたすべてのロール。 | |
PROXYROLE = ALL | WITHOUT ROLE | 一致する永続データベース ユーザーに付与されたすべてのロール。 |
WITH ROLE <role(s)> | ユーザーのGRANT CONNECT THROUGH文でプロキシ ユーザーに対して指定されたすべてのロール。 | |
PROXYROLE = rolename | WITHOUT ROLE | 一致する永続データベース ユーザーが名前付きロールのメンバーの場合は、名前付きロール。 |
WITH ROLE <role(s)> | ロールがプロキシ ユーザーのGRANT CONNECT THROUGH文で指定されている場合は、名前付きロール。 | |
PROXYROLE = NONE または PROXYROLE = NULL |
WITHOUT ROLE | 現行のロールはNULLに設定。 プロキシ ユーザーが一致する永続データベース ユーザーのロールを継承する。 |
WITH ROLE <role(s)> | システムによってエラーが返される。 SET QUERY_BAND文でGRANT CONNECT THROUGH文からロールを指定しなくてはならない。 |
プロキシ ユーザーセッションに対するSET QUERY_BAND文の使用についての詳細は、Teradataオレンジ ブックの<Using Query Banding in the Teradata Database>を参照してください。