啟用 Kerberos 委派

利用 Kerberos 委派,Tableau Server 能夠使用工作簿或檢視 Viewer(檢視者)的 Kerberos 認證代表該 Viewer(檢視者)執行查詢。在以下情況下,這種方法很有用:

  • 您需要知道誰正在存取資料(Viewer(檢視者)的名稱將出現在資料來源的存取記錄中)。

  • 資料來源具有列層級安全性,即不同的使用者可以存取不同的列。

支援的資料來源

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 KDC。
  • 網域帳戶必須設為 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 委派將成為預設操作。但是,此設定不會阻止內容 Creator 存取服務帳戶。Creator 仍可使用 Tableau Desktop 或其他方法發佈與執行身分服務帳戶連結的內容。

有關「執行身分」服務帳戶的詳情,請參閱使用「執行身分」服務帳戶進行資料存取

設定過程

此部分提供用於啟用 Kerberos 委派的過程範例。該方案還包括範例名稱,用於說明描述設定元素之間的關係。

  1. 在 Tableau Server 中的所有節點上,將執行身分使用者設定為以作業系統方式執行。有關詳情,請參閱啟用執行身分服務帳戶以充當作業系統

  2. Tableau Server 將需要 Kerberos 服務票證來代表發起資料庫調用的使用者進行委派。您必須建立一個將用於委派給給定資料庫的網域帳戶。此帳戶稱為執行身分服務帳戶。在本主題中,設定為委派/執行身分帳戶的範例使用者為 tabsrv@example.com

    在連線到使用者域的 Windows Server 上,該帳戶必須設定為具有 Active Directory 使用者和電腦:

    • 開啟執行身分服務帳戶的「屬性」頁面,按一下「委派」索引標籤,並選取「僅信任此使用者作為指定服務的委派」和「使用任何驗證協議」。
  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 為簡短名稱為 EXAMPLEEXAMPLE.COM 中的使用者執行 Kerberos 委派,則主體名稱將為: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 疑難排解

感謝您的意見反應!已成功提交您的意見回饋。謝謝!