個人用アクセス トークン

個人用アクセス トークン (PAT) を使用すると、管理者と Tableau Server ユーザーが有効期間の長い認証トークンを作成できるようになります。PAT を使用すると、ハードコーディングされた認証資格情報 (ユーザー名とパスワード) や対話型のサインインを必要とすることなく、管理者とユーザーが Tableau REST API にサインインできるようになります。Tableau REST API での PAT の使用の詳細については、Tableau REST API ヘルプの「サインインとサインアウト (認証)(新しいウィンドウでリンクが開く)」を参照してください。

Tableau REST API を使用して作成した、自動化されたスクリプトとタスクでは、PAT を作成することをお勧めします。

  • セキュリティの強化: 個人用アクセス トークンは、認証資格情報が漏えいした場合のリスクを軽減します。Tableau Server がアイデンティティ ストアとして Active Directory または LDAP を使用している場合、自動化されたタスクに個人用アクセス トークンを使用することで、認証資格情報が漏えいする影響を低減することができます。トークンが漏えいしたり、自動化で使用されてエラーやリスクが生じたりした場合、トークンを失効させるだけで済みます。ユーザーの認証資格情報を交換したり、取り消したりする必要はありません。

  • 監査と追跡: 管理者は、Tableau Server ログを確認し、トークンが使用された時期、そのトークンから作成されたセッション、それらのセッションで実行されたアクションを追跡することができます。また、セッションや関連タスクが、トークンから生成したセッションで実行されたか、インタラクティブなサインインから生成したセッションで実行されたかを確認することもできます。

  • 自動化の管理: トークンは実行されるスクリプトやタスクごとに作成できます。これにより、組織全体の自動化タスクをサイロに入れ、確認することができます。さらに、トークンを使用すると、ユーザー アカウントのパスワード リセットやメタデータの変更 (ユーザー名、メールなど) を行っても、認証資格情報がスクリプトにハードコードされている場合と同様、自動化が中断することはありません。

注: 

  • tabcmd で PAT を使用するには、https://tableau.github.io/tabcmd/ から互換バージョンの tabcmd をインストールします。
  • PAT は、一般的なクライアントによる Tableau Server Web UI または TSM へのアクセスには使用されません。
  • PAT の有効期限の設定や、UI から PAT を作成できるユーザー権限の無効化や制限は、Tableau Cloud でのみ行うことができます。
  • PAT は、ユーザーの認証方法(新しいウィンドウでリンクが開く)が変更されると自動的に取り消されます。

個人用アクセス トークンについて

作成された個人用アクセス トークン (PAT) は、ハッシュ化され、リポジトリに保存されます。PAT がハッシュ化されて保存されると、PAT シークレットはユーザーに一度だけ表示されますが、ユーザーがダイアログを閉じた後はアクセスできなくなります。そのため、ユーザーは、トークンを安全な場所にコピーし、パスワードと同様に扱うように指示されます。ランタイムに PAT を使用する場合、Tableau Server はユーザーから提示された PAT を、リポジトリに保存されているハッシュ値と比較します。一致すると、認証済みセッションが開始されます。

認可のコンテキストでは、PAT で認証された Tableau Server セッションには、PAT 所有者と同じアクセス権限が与えられます。

注: ユーザーは、1 つの PAT で複数の Tableau Server セッションを同時にリクエストできません。同じサイトであれ、別のサイトであれ、同じ PAT で再度サインインすると、前回のセッションが終了し、認証エラーが発生します。

サーバー管理者の偽装

バージョン 2021.1 以降、Tableau Server の PAT 偽装を有効にできます。このシナリオでは、Tableau REST API を使用する際に、サーバー管理者が作成した PAT をユーザーの偽装(新しいウィンドウでリンクが開く)に使用できます。偽装は、アプリケーション内にエンド ユーザー固有の Tableau コンテンツを埋め込むというシナリオで役に立ちます。具体的には、偽装 PAT を使用すると、認証資格情報をハードコーディングすることなく、特定のユーザーとしてクエリを実行し、そのユーザーが Tableau Server 内でアクセスできるコンテンツを取得するアプリケーションを構築できます。

詳細については、Tableau REST API ヘルプの「ユーザーの偽装(新しいウィンドウでリンクが開く)」を参照してください。

偽装サインインの要求時に Tableau Server で個人用アクセス トークンが承認されるようにする

デフォルトでは、Tableau Server ではサーバー管理者の PAT 偽装は許可されていません。次のコマンドを実行して、サーバー全体で設定を有効にする必要があります。

tsm authentication pat-impersonation enable [global options]

tsm pending-changes apply

重要: コマンドを実行すると、サーバー管理者が作成したすべての PAT (既存の PAT を含む) が偽装に使用できるようになります。既存のすべてのサーバー管理者 PAT を一括して失効させるには DELETE /api/{api-version}/auth/serverAdminAccessTokens URI をポストします。詳細については、Tableau REST API ヘルプの「ユーザーの偽装(新しいウィンドウでリンクが開く)」を参照してください。

個人用アクセス トークンの作成

ユーザーは、自分の PAT を作成する必要があります。管理者がユーザーの PAT を作成することはできません。

Tableau Server にアカウントを持つユーザーは、[マイ アカウント設定] ページで個人用アクセス トークン (PAT) の作成、管理、失効を行うことができます。詳細については、Tableau ユーザー ヘルプの「アカウント設定の管理(新しいウィンドウでリンクが開く)」を参照してください。

注: ユーザーは最大 10 個の PAT を持つことができます。

個人アクセス トークンの有効期限の変更

個人用アクセス トークン (PAT) は、15 日間連続して使用されないと失効します。15 日ごとよりも頻繁に使用されても、PAT は 1 年で失効します。1 年後、新しい PAT を作成する必要があります。失効した PAT は、[マイ アカウント設定] ページに表示されません。

PAT の有効期限を変更するには、tsm configuration set コマンドの refresh_token.absolute_expiry_in_seconds オプションを使用します。

個人用アクセス トークンの失効

管理者は、ユーザーの PAT を失効させることもできます。ユーザーも、[マイ アカウント設定] ページで自分の個人用アクセス トークン (PAT) を失効させることができます。Tableau ユーザー ヘルプのトピック「アカウントの管理(新しいウィンドウでリンクが開く)」で説明されている手順を使用します。

  1. Tableau Server にサーバー管理者またはサイト管理者としてサインインします。

  2. PAT を失効させるユーザーを見つけます。サーバー管理者ページの操作とユーザー検索の詳細については、「ユーザーの表示、管理、削除」を参照してください。

  3. ユーザー名前をクリックし、プロフィール ページを開きます。

  4. ユーザーのプロフィール ページで、[設定] タブをクリックします。

  5. 失効させるトークンを [個人用アクセス トークン] セクションで特定し、[失効] をクリックします。

  6. ダイアログ ボックスで [削除] をクリックします。

個人用アクセス トークンの使用状況の追跡と監視

個人用アクセス トークン (PAT) に関連したすべてのアクションは、Tableau Server のアプリケーション サーバー (vizportal) サービスに記録されます。PAT 関連のアクティビティを見つけるには、RefreshTokenService の文字列を含むログ エントリをフィルタリングします。

PAT は、Token Guid: <TokenID(Guid)> の形式で保存されます。TokenID は Base64 エンコード化された文字列です。シークレット値はログに含まれません。

例:

Token Guid: 49P+CxmARY6A2GHxyvHHAA== (e3d3fe0b-1980-458e-80d8-61f1caf1c700)

以下は 2 つのログ エントリのスニペット例です。最初のエントリは、ユーザーが PAT にどのようにマッピングされるかを示します。2 番目のエントリは、同じ PAT の更新イベントを示しています。

RefreshTokenService - Issued refresh token to the following user: jsmith. Token Guid: 49P+CxmARY6A2GHxyvHHAA== (e3d3fe0b-1980-458e-80d8-61f1caf1c700)
RefreshTokenService - Redeemed refresh token. Token Guid: 49P+CxmARY6A2GHxyvHHAA== (e3d3fe0b-1980-458e-80d8-61f1caf1c700)

主要な操作を見つけるには、OAuthController の文字列を含むログ エントリをフィルターします。

フィードバックをお送りいただき、ありがとうございます。フィードバックは正常に送信されました。ありがとうございます!