Kerberos 委任の有効化

Kerberos 委任を使用すると、Tableau Server はワークブックまたはビューを参照しているユーザーの Kerberos 認証資格情報を使用してそのユーザーのためにクエリを実行できます。これは、次のような場合に役立ちます。

  • 誰がデータにアクセスしているかを知る必要があります (ビューアーの名前はデータ ソースのアクセス ログに表示されます)。

  • データ ソースのセキュリティは行レベルですが、別のユーザーは別の行へのアクセス権があります。

サポートされているデータ ソース

Tableau では次のデータ ソースを使用する Kerberos 委任がサポートされています。

  • Cloudera: Hive/Impala
  • Denodo
  • Hortonworks
  • MSAS
  • Oracle
  • PostgreSQL
  • Spark
  • SQL Server
  • Teradata
  • Vertica
  • TIBCO

要件

Kerberos 委任には Active Directory が必要です。

  • Tableau Server のアイデンティティ ストアが、Active Directory を使用するように構成されている必要があります。
  • Tableau Server がインストールされているコンピューターを Active Directory のドメインに結合する必要があります。
  • MIT Kerberos はサポートされていません。
  • ドメイン アカウントは、Tableau Server で実行サービス アカウントとして構成する必要があります。実行サービス アカウントの変更 を参照してください。ユーザーに Tableau Server およびデータ ソースとは異なる Active Directory ドメインがある場合は、そのドメインの信頼を構成する必要があります。Active Directory 展開のドメイン信頼要件を参照してください。
  • 委任が構成されました。実行サービス アカウントの委任権限をターゲット データベースのサービス プリンシパル名 (SPN) に付与します。この実行サービス アカウントは最初のソース ユーザーに代わってリソースにアクセスする権限が委任されています。
  • JDBC ベースのコネクタを使用している Oracle データ ソースで Tableau Server 2020.2 以降で委任を構成する場合は JDBC コネクタの Kerberos 委任を有効にするを参照してください。 Tableau 2020.2 以降、Oracle コネクタは JDBC を使用します。

Web オーサリングとユーザーの Kerberos 認証

特定のターゲットに対してデータへの接続を構成する場合、優先認証方法として統合認証または Windows 認証を選択できます。ただし、Web 作成シナリオのデフォルトの動作では、Kerberos サービス アカウント (「実行」アカウント) が代わりに使用されます。

Kerberos 委任を使用した Web 作成シナリオでユーザーの認証資格情報を有効にするには、TSM を使用して追加の構成を行う必要があります。次のコマンドを実行します。

tsm configuration set -k native_api.WebAuthoringAuthModeKerberosDelegation -v true
tsm pending-changes apply

この構成を行うと、Web オーサリングとの統合認証を選択した場合、Kerberos 委任がデフォルトの操作になります。ただし、この設定によってコンテンツ作成者がサービス アカウントにアクセスすることは妨げられません。作成者は、Tableau Desktop またはその他の方法を使用して、実行サービス アカウントに接続するコンテンツをパブリッシュすることができます。

実行サービス アカウントの詳細については、「実行サービス アカウントを使用したデータ アクセス」を参照してください。

構成プロセス

このセクションでは、Kerberos 委任を有効にするためのプロセスの例を示します。また、シナリオには各構成要素間のリレーションシップを説明する際に便利なサンプル名が含まれています。

  1. Tableau Server のすべてのノード上で、オペレーティング システムの一部として動作するように実行ユーザーを構成します。詳細については、オペレーティング システムとして動作するように実行サービス アカウントを有効化するを参照してください。

  2. Tableau Server では、データベースへの呼び出しを開始するユーザーの委任に Kerberos サービス チケットが必要となります。指定したデータベースへの委任に使用するドメイン アカウントを作成する必要があります。このアカウントは実行サービス アカウントと呼ばれます。このトピックで委任/実行アカウントとして構成されたサンプル ユーザーは、tabsrv@example.com となります。

    このアカウントは、ユーザー ドメインに接続されている Windows Server 上の Active Directory のユーザーおよび PC を使用して構成する必要があります。

    • 実行サービス アカウントの [プロパティ] ページを開き、[委任] タブをクリックして [指定サービスの委任用のみ、このユーザーを信頼する] および [任意の認証プロトコルを使用する] を選択します。
  3. 次の TSM コマンドを実行して Kerberos 委任を有効にします。

    tsm configuration set -k wgserver.delegation.enabled -v true

  4. 次の TSM コマンドを実行して Tableau Server へ変更を適用します。

    tsm pending-changes apply

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

  5. (オプション) Tableau Server で MIT Kerberos プリンシパル形式を使用するように構成します。

    既定では、Tableau Server は Active Directory の短い名前を使用して Kerberos プリンシパルを生成します。たとえば、Tableau Server が EXAMPLE.COM のユーザーの Kerberos 委任を、短い名前 EXAMPLE を使用して実行する場合、プリンシパル名は user@example になります。

    データベースが Linux で実行中の場合、krb5.conf で auth_to_local マッピングの調整が必要になることがあります。krb5.conf ファイルの編集の詳細については、Kerberos 委任マルチドメイン構成を参照してください。または、次のコマンドを実行して、Tableau Server で Kerberos プリンシパルの完全なドメイン名を使用するように構成することもできます。

    tsm configuration set -k native_api.protocol_transition_a_d_short_domain -v false --force-keys
    tsm configuration set -k native_api.protocol_transition_uppercase_realm -v true --force-keys
    tsm pending-changes apply
  6. データ接続で委任を有効にします:

    関連項目

    Kerberos のトラブルシューティング

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