Google での OAuth の設定

既定では、Google アナリティクス、Google BigQuery、Google スプレッドシート (Tableau バージョン 2022.1 で非推奨) のコネクタは、プロバイダーにより Tableau Server 用に生成され、同じサイト上のすべてのユーザーによって共有される OAuth トークンの管理キーチェーンを使用します。

各コネクタの OAuth クライアント ID とシークレットを使用して Tableau Server を構成することで、管理キーチェーンを使用するコネクタを変換し、保存済み認証資格情報を使用することができます。

このトピックでは、保存済み認証資格情報を使用して、Google アナリティクス、Google BigQuery、Google スプレッドシートの接続を OAuth 用に設定する方法を説明します。各Tableau Serverインスタンスでこれらのステップを実行します。

注: 既定では、Google ドライブ接続では保存された認証資格情報を使用します。Tableau 2022.3 以降では、Tableau Server に Google 用の OAuth クライアント ID およびシークレットを設定する必要があります。

管理キーチェーンと保存済み認証資格情報の詳細については、「OAuth 接続」を参照してください。

注: 

  • すべての Google ベースのコネクタには、管理キーチェーン (既定)、サーバー全体の OAuth、またはサイト固有の OAuth のいずれかが必要です。
  • 保存済み認証資格情報をサイトに使用するには、最初にサーバー全体の OAuth を構成する必要があります。
  • サーバー全体の OAuth は、サイト全体の OAuth が構成されているかどうかに関係なく使用できます。
  • サイト固有の OAuth を使用する場合は、各サイトを個別に構成する必要があります。
  • ライブ接続プロンプト、接続の編集、および Web 作成をサポートするには、管理キーチェーンを保存済み認証資格情報に変換して、エラーを回避します。

手順の概要

OAuth を設定するには、次の 3 つの一般的なステップを実行します。

  1. API アクセスを有効にし、Google からアクセス トークンを作成します。
  2. ステップ 1 で取得した情報を使用して Tableau Server を構成します。
  3. (オプション) サイト固有の OAuth を構成します。
  4. Google データ ソースを作成して編集します。

クライアント ID を取得してGoogle API を有効にする

注:これらの手順は、本書の執筆中に Google Cloud Platform コンソールの設定を反映します。詳細については、Google Developers Console Help の「Using OAuth 2.0 for Web Server Applications (Web サーバー アプリケーションでの Oauth 2.0 の使用)」(新しいウィンドウでリンクが開く)を参照してください。

  1. Google Cloud Platform(新しいウィンドウでリンクが開く) にサインインし、[Go to my console] をクリックします。

  2. ドロップダウン メニューで [プロジェクトの選択] をクリックして、[プロジェクトの作成] を選択します。

  3. 表示される新しいプロジェクトフォームで次を実行します。

    • プロジェクトに、このプロジェクトを使用するTableau Serverインスタンスを反映するような意味のある名前を付けてください。

    • プロジェクトIDを変更するかを決めます。

      注: プロジェクトを作成した後は、プロジェクト ID を変更することはできません。詳細を見るには、クエスチョン マークのアイコンをクリックしてください。

  4. 新しいプロジェクトを開き、[API とサービス] > [OAuth 同意画面] に移動して、[ユーザー タイプ] を選択します。

  5. [OAuth 同意画面] タブをクリックし、ユーザーに表示される [製品名] に意味のある名前を入力します。

  6. [認証資格情報] > [認証資格情報の作成] タブの順にクリックしてから、[OAuth クライアント ID] をクリックします。

  7. [OAuth クライアント IDの作成] 画面で、必須フィールドに入力します。OAuth トークンを承認する手順に従います。

    • [Web Application] を選択します。

    • クライアントを入力します。

    • Authorized JavaScript Origins の場合、[ADD URI (URI の追加)] をクリックして、HTTP または HTTPS を使用して Tableau Server のドメイン名を入力します。

    • Authorized Redirect URI の場合、[URI の追加] をクリックして、サンプル テキストを Tableau Server のインターネット アドレスに置換し、末尾に auth/add_oauth_token を追加します。例は次のとおりです。

      https://your_server_url.com/auth/add_oauth_token

  8. 認証済みのリダイレクト URI をコピーして、Tableau Server コンピューターからアクセス可能な場所に貼り付けます。

  9. [作成] をクリックします。

  10. Google が返す次の値をコピーし、使用しているTableau Serverコンピューターからアクセスすることができる場所に貼り付けます。

    • クライアント ID
    • クライアント シークレット
  11. [APIs & Services (API とサービス)] で、[BigQuery API][Google ドライブ API] (Google スプレッドシートを有効にするため)、または [Analytics API (アナリティクス API)] が有効になっていることを確認します。API を有効にするには、ページの一番上で ENABLE API をクリックします。

    注: Tableau Server と Google アナリティクス 4 の間の接続を確立するには、Google コンソールで Google アナリティクス管理 API と Google アナリティクス データ API の両方を有効にする必要があります。これらの API を追加すると、プロセス中に発生する可能性のある権限エラーを防ぐことができます。

Google OAuth のための Tableau Server の構成

クライアント ID を取得してGoogle API を有効にするの手順を実行して取得した情報を使用することで、Tableau Serverを構成します。

  • Tableau Server PC でシェルを開き、以下のコマンドを実行してアクセス トークンと URI を指定します。

    tsm configuration set -k oauth.google.client_id -v <your_client_ID>

    tsm configuration set -k oauth.google.client_secret -v <your_client_secret>

    tsm configuration set -k oauth.google.redirect_uri -v <your_authorized_redirect_URI>

    tsm pending-changes apply

    保留中の変更にサーバーの再起動が必要な場合は、pending-changes apply コマンドの実行時に、再起動が行われることを知らせるメッセージが表示されます。このメッセージはサーバーが停止していても表示されますが、その場合には再起動は行われません。--ignore-prompt オプションを使用してメッセージが表示されないようにできますが、そのようにしても再起動に関する動作が変わることはありません。変更に再起動が必要ない場合は、メッセージなしで変更が適用されます。詳細については、tsm pending-changes applyを参照してください。

サイトのカスタム OAuth の構成

サイトに対してカスタム GoogleOAuth クライアントを構成できます。

カスタム OAuth クライアントを構成して、1) サーバー用に構成されている場合は OAuth クライアントを上書きするか、2) 一意の OAuth クライアントを必要とするデータに安全に接続するためのサポートを有効にすることを検討してください。

カスタム OAuth クライアントが構成されている場合、サイトレベルの構成はサーバー側の構成よりも優先され、作成されたすべての新しい OAuth 認証資格情報では既定でサイトレベルの OAuth クライアントが使用されます。構成を有効にするために、Tableau Server を再起動する必要はありません。

重要: カスタム OAuth クライアントを構成する前に確立された既存の OAuth 認証資格情報は一時的に使用できますが、データ アクセスが中断されないように、サーバー管理者とユーザーの双方が保存された認証資格情報を更新する必要があります。

1: OAuth クライアント ID、クライアン トシークレット、リダイレクト URL の準備

カスタム OAuth クライアントを構成する前に、以下の情報が必要です。この情報を準備したら、サイトのカスタム OAuth クライアントを登録できます。

  • OAuth クライアント ID とクライアント シークレット: 最初に OAuth クライアントをデータ プロバイダー (コネクタ) に登録して、Tableau Server 用に生成されたクライアント IDとシークレットを取得します。

  • リダイレクト URL: 正しいリダイレクト URL であることを確認します。これは、以下のステップ 2 の登録プロセスで必要になります。

    https://<your_server_name> .com / auth / add_oauth_token

    例: https://example.com/auth/add_oauth_token

2: OAuth クライアント ID とクライアント シークレットの登録

以下の手順に従って、カスタム OAuth クライアントをサイトに登録します。

  1. 管理者の認証資格情報を使用して Tableau Server にサインインし、[設定] ページに移動します。

  2. [OAuth Clients Registry (OAuth クライアント レジストリ)] で、[Add OAuth Client (Oauth クライアントの追加)] ボタンをクリックします。

  3. 上記のステップ 1 の情報を含む、必要な情報を入力します。

    1. [接続タイプ] で、カスタム OAuth クライアントを設定するコネクタを選択します。

    2. 複数の OAuth クライアントを登録する場合は、OAuth インスタンス URL に情報を入力する必要があります。それ以外の場合は、任意で入力してください。

    3. クライアント IDクライアント シークレットリダイレクト URL には、上記のステップ 1 で準備した情報を入力します。

    4. [Add OAuth Client (Oauthクライアントの追加)] ボタンをクリックして、登録プロセスを完了します。

  4. (オプション) サポートされているすべてのコネクタに対して、ステップ 3 を繰り返します。

  5. [設定] ページの下部または上部にある [保存] ボタンをクリックして、変更を保存します。

3: 保存した認証資格情報の検証と更新

データ アクセスが中断されないようにするため、サーバー管理者 (およびサイト ユーザー) は、以前に保存した認証資格情報を削除してから、サイトのカスタム Oauth クライアントを使用できるように再度追加する必要があります。

  1. [マイ アカウント設定] ページに移動します。

  2. [データ ソースの保存済み認証資格情報] で、次の手順を実行します。

    1. 上記のステップ 2 でカスタム OAuth クライアントを構成したコネクタの既存の、保存済み認証資格情報の横にある [削除] をクリックします。

    2. コネクタ名の横にある [追加] をクリックし、プロンプトに従って 1) 上記のステップ 2 で構成したカスタム OAuth クライアントに接続し、2) 最新の認証資格情報を保存します。

4: 保存した認証資格情報を更新するようにユーザーに通知する

上記のステップ 2 で構成したカスタム OAuth クライアントのコネクタの保存済み認証資格情報を更新するようにサイト ユーザーに通知します。サイトのユーザーは、保存済み認証資格情報の更新で説明されている手順を使用して、保存された認証資格情報を更新できます。

Google データ ソースの作成と編集

次に、Google データ ソースをサーバーにパブリッシュします。Tableau Desktop トピックの「Google BigQuery」(新しいウィンドウでリンクが開く)を参照してください。

データ ソースをパブリッシュした後、最後のステップは、前に構成した埋め込みアクセス トークンを使用するようにデータ ソース接続を編集することです。Tableau Server での接続の編集を参照してください。

アクセス トークンの管理

OAuth 用のサーバーを構成したら、プロファイル設定でのアクセス トークンの管理をユーザーに許可するか、トークンを一元的に管理できます。詳細については、保存済みアクセス トークンの許可を参照してください。

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