メインコンテンツまでスキップ

Tableau Server からの Databricks サインオンの構成

このページでは、Tableau Server から Databricks サインオンを構成する方法について説明します。Databricks アカウント管理者としてこの 1 回限りの構成を完了すると、ユーザーは SSO 認証を使用して Tableau Server から接続できるようになります。

この記事の手順は、Tableau Desktop とTableau Cloud OAuth、Databricks アカウントで アプリケーションとして有効になっている デフォルト には必要ありません。

このページは、カスタム Tableau Server OAuth アプリケーションの作成に特化しています。一般的なカスタムOAuthアプリケーションの作成ステップについては、以下を参照してください。

必要に応じて、シングルユースリフレッシュトークンを有効にできます。シングルユースリフレッシュトークンを参照してください。

始める前に

Tableau Server から Databricks サインオンを構成する前に、次のことを行います。

また、次の Tableau 要件を満たす必要があります。

  • 次のいずれかのバージョンの Tableau Server がインストールされています。

    • 2021.4.13 またはそれ以降
    • 2022.1.9 またはそれ以上
    • 2022.3.1またはそれ以上
  • Tableau Server 管理者である。

Databricks UI を使用して Tableau Server を OAuth アプリケーションとして追加する

Databricks UI を使用して Tableau Server を OAuth アプリケーションとして追加するには、次の手順を実行します。

  1. アカウントコンソールにログインし、サイドバーの [設定 ]アイコンをクリックします。

  2. [ アプリの接続 ] タブで、[ 接続の追加 ] をクリックします。

  3. 次の詳細を入力します。

    1. 接続の名前。

    2. OAuth 接続のリダイレクト URL。

    3. アクセス スコープは 、 API Tableau Server がアクセスできるかどうかを決定します。

      • SQL スコープは、Tableau が Databricks SQL APIにアクセスできるようにする必要があります。
      • ALL APIsスコープを使用すると、Tableau Serverクエリ以外の目的でDatabricks APIにアクセスできます。

      次のスコープは自動的に許可されます。

      • openidemailprofile: ID トークンを生成するために必要です。
      • offline_access: 更新トークンを生成するために必要です。

      これらのスコープをTableau Serverに許可しない場合は、POST /api/2.0/アカウント/{account_id}/oauth2/custom-app-integrations を使用して、きめ細かなスコープを管理できます。 カスタムアプリケーションを作成するためのAPI。

    4. クライアントシークレットを生成するかどうか。これは、非公開 (機密) クライアントの場合に必要です。

      [ Connection created ] ダイアログボックスには、接続のクライアント ID とクライアントシークレット (該当する場合) が表示されます。

    5. アクセス トークンの有効期限 (TTL) (分単位)。デフォルト: 60

    6. 更新トークンの有効期限 (TTL) (分単位)。デフォルト: 10080

  4. [ 追加 ] をクリックします。

  5. [ クライアント シークレットの生成] を選択した場合は、クライアント シークレットをコピーして安全に保存します。クライアントシークレットを後で取得することはできません。

リダイレクト URL、トークン TTL、および更新トークン TTL を編集するには、アカウント コンソールの [設定 ] > [アプリ接続 ] ページでアプリケーション名をクリックします。また、既存の公開済み OAuth アプリケーションを UI で表示することもできます。

別の方法: Databricks CLI を使用して Tableau Server を OAuth アプリケーションとして追加する

Databricks CLI を使用して Tableau Server を OAuth アプリケーションとして Databricks アカウントに追加するには、次の手順を実行します。

  1. アカウント ID を確認します

  2. Tableau Server の URL を見つけます。

  3. 次のコマンドを実行します。

    databricks account custom-app-integration create --confidential --json '{"name":"<name>", "redirect_urls":["<redirect-url>"], "scopes":["all-apis", "offline_access", "openid", "profile", "email"]}'
    • <name> をカスタム OAuth アプリケーションの名前に置き換えます。
    • <redirect-url>の場合は、Tableau Server の URL に /auth/add_oauth_token を追加します。たとえば、 https://example.tableauserver.com/auth/add_oauth_token.

    サポートされている値の詳細については、リファレンスの 「POST /api/2.0/アカウント/{アカウント}/oauth2/custom-app-integrations RESTAPI」を参照してください。

    クライアント ID とクライアントシークレットが生成され、次の出力が返されます。

    {"integration_id":"<integration-id>","client_id":"<client-id>","client_secret":"<client-secret>"}
注記

OAuth アプリケーションの有効化は、処理に 30 分かかる場合があります。

  1. クライアントシークレットを安全に保存してください。
重要

クライアントシークレットを後で取得することはできません。

Tableau Server での OAuth の構成

Tableau Server で OAuth を構成するには、次の手順を実行します。

  1. Tableau Server にサーバー管理者としてサインインします。
  2. サイドバーで、「 設定 」> 「OAuth クライアントレジストリ 」>「 OAuth クライアントを追加 」をクリックします。
  3. [接続の種類 ] で [ Databricks ] を選択します。
  4. [クライアント ID ] に、代替案: Databricks CLI を使用して Tableau Server を OAuth アプリケーションとして追加するで生成されたクライアント ID を入力します。
  5. [クライアント シークレット ] に、代替案: Databricks CLI を使用して Tableau Server を OAuth アプリケーションとして追加するで生成されたクライアント シークレットを入力します。
  6. [リダイレクト URL ] に、「代替案: Databricks CLI を使用して Tableau Server を OAuth アプリケーションとして追加する」のリダイレクト URL を入力します。
  7. OAuth クライアントの追加 」をクリックします。

OAuth 設定のトラブルシューティング

このセクションでは、OAuth 設定に関する一般的な問題を解決する方法について説明します。

IdP からの 404 エラー

問題 : Tableau Server への認証を試みると、404 エラーが表示されます。

原因 : OAuth が正しく構成されていません。

ソリューション : OAuthが正しく構成されていることを確認します。

次のステップ

ユーザーは SSO を使用して、Tableau Server から Databricks への認証を行えるようになりました。 Tableau と Databricks の接続を参照してください。