2.16 - 認証オブジェクト - Teradata QueryGrid

Teradata® QueryGrid™ インストールとユーザー ガイド

Product
Teradata QueryGrid
Release Number
2.16
Release Date
2021年6月
Content Type
インストール
ユーザー ガイド
構成
管理
Publication ID
B035-5991-061K-JPN
Language
日本語 (日本)

ユーザーの信頼証明をTeradataコネクタの暗号化された形式で格納する許可オブジェクトを作成できます。許可オブジェクトは、ユーザーの信頼証明を格納し、外部サーバーで使用され、これらの信頼証明を認証のためにリモート システムに提供します。

Teradataユーザーとリモート ユーザー間で1対1のマッピングが必要な場合は、Teradataシステムおよびセキュリティ システム内に対応するアカウントが必要です。
  • そのユーザーがAS INVOKER TRUSTEDを使用して承認を作成する場合、承認はデフォルトでユーザーのデータベースに格納されます。
  • セキュリティ システムの信頼証明を相手のユーザーに知らせる必要はなく、許可オブジェクトはそのデータベースへの権限を持つユーザーのみがアクセスできます。

複数のTeradataシステム ユーザーとリモート システム上の1人のユーザー間で多対1のマッピングを使用し、管理を単純化することができます。許可の作成者のみが、リモート セキュリティ システム上のユーザーの認証情報を知っている必要があります。AS DEFINER TRUSTEDを使用して承認が作成される場合、承認はデフォルトでTD_SERVER_DBデータベースに格納され、その承認はグローバルに利用可能になります。

TeradataからPrestoへの接続の場合、許可オブジェクトを作成し、それを外部サーバーのUSING句で使用します。Teradataが許可オブジェクトの信頼証明をPrestoコネクタに渡すと、クエリーをデータ ソースに送信する前に、Prestoコネクタがユーザーを認証します。

外部サーバーが承認オブジェクトを検索する場所

INVOKERを使用する場合、許可はユーザーのデータベースに格納されます。各ユーザーは、各自の信頼証明を使用してリモート システムにログオンできます。外部サーバーがINVOKERキーワードで構成され、データベース名(dbname)に値が指定されていない場合、PrestoまたはHiveコネクタは、自動的にセッション ユーザーのユーザー データベース内で承認を探します。

INVOKERの使用

次の例では、作成者のユーザー データベースにremote_presto1承認オブジェクトを作成します。 作成者がtd_userの場合、td_user.remote_presto1は完全修飾オブジェクト名です。

create authorization remote_presto1 as invoker trusted 
      user 'active_user' password 'active_pass';

この例では、remote_presto1承認オブジェクトを使用して外部サーバー オブジェクトを作成します。

create foreign server Presto_1 
external security invoker trusted remote_presto1 
using
 link('td1_presto1')
 version('active')
DO IMPORT WITH TD_SYSFNLIB.QGInitiatorImport,
DO EXPORT WITH TD_SYSFNLIB.QGInitiatorExport;

td1_presto1link値は、QueryGridポートレットに作成されます。リンクは開始ネットワークおよびターゲット ネットワークを定義し、コネクタ間のデータ転送のルールを定義する通信ポリシーおよびその他のプロパティを指定します。

外部サーバーがDEFINERキーワードで構成され、データベース名(dbname)に値が指定されていない場合、Teradataコネクタは、自動的にTD_SERVER_DBデータベース内で承認を探します。

DEFINERの使用

この例では、remote_presto1承認オブジェクトを作成します。

create authorization td_server_db.remote_presto1 as definer trusted 
      user 'active_proxy_user' password 'active_proxy_pass';

この例では、remote_presto1承認オブジェクトを使用する外部サーバー オブジェクトを作成します。

create foreign server Presto_1 
external security definer trusted remote_presto1 
using
 link('td1_presto1')
 version('active')
DO IMPORT WITH TD_SYSFNLIB.QGInitiatorImport,
DO EXPORT WITH TD_SYSFNLIB.QGInitiatorExport;

td1_presto1link値は、QueryGridポートレットに作成されます。リンクは開始ネットワークおよびターゲット ネットワークを定義し、コネクタ間のデータ転送のルールを定義する通信ポリシーおよびその他のプロパティを指定します。

詳細については、CREATE AUTHORIZATIONおよびREPLACE AUTHORIZATIONを参照してください。