---
schema_version: "1"
id: acc241d12f533a7757f47f2faa0adcae4355cce77be3fe142501f5cf55896283
title: 啟用 Kerberos 委派
collection: tableau
version: next
locale: zh-tw
portal_url: https://docs.salesforce.com/tableau/next/zh-tw/server/kerberos_delegation.md
canonical_url: https://help.tableau.com/v0.0/server/zh-tw/kerberos_delegation.htm
source_site: help.tableau.com
content_type: documentation
content_hash: 7544b2b3f1274d38f7493ad5723d47bb3155941a82d7cd080a5185c01f804d1a
description: Enable Kerberos delegation so Tableau Server queries data as the viewer.
---
[跳至主要內容](#main-content)

# 啟用 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 [身分存放區](https://help.tableau.com/v0.0/server/zh-tw/plan_identity_store.htm)設定為使用 Active Directory。
- 安裝有 Tableau Server 的電腦必須聯結到 Active Directory 網域。
- 不支援 MIT Kerberos KDC。
- 網域帳戶必須設為 Tableau Server 上的「執行身分」服務帳戶。請參閱[變更執行身分服務帳戶](https://help.tableau.com/v0.0/server/zh-tw/runas_acct.htm)。如果您的使用者與 Tableau Server 和資料來源位於不同的 Active Directory 域中，則必須設定域信任。請參閱[Active Directory 部署的網域信任需求](https://help.tableau.com/v0.0/server/zh-tw/runas_domain.htm)。
- 已設定委派。對目標資料庫「服務主體名稱 (SPN)」授予「執行身分」服務帳戶的委派權限。已委派「執行身分」服務帳戶授予代表發起源使用者存取資源的權限。
- 如果要使用以 JDBC 為基礎的連接器，透過 Oracle 資料來源在 Tableau Server 2020.2 或更高版本中設定委派，請參閱[為 JDBC 連接器啟用 Kerberos 委派](https://help.tableau.com/v0.0/server/zh-tw/kerberos_delegation_jdbc.htm)。從 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 或其他方法發佈與執行身分服務帳戶連結的內容。

有關「執行身分」服務帳戶的詳情，請參閱[使用「執行身分」服務帳戶進行資料存取](https://help.tableau.com/v0.0/server/zh-tw/runas_access.htm)。

## 設定過程

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

1. 在 Tableau Server 中的所有節點上，將執行身分使用者設定為以作業系統方式執行。有關詳情，請參閱[啟用執行身分服務帳戶以充當作業系統](https://help.tableau.com/v0.0/server/zh-tw/runas_os.htm)。
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](https://help.tableau.com/v0.0/server/zh-tw/cli_pending-changes.htm#pending-changes-apply)。
5. （可選）將 Tableau Server 設定為使用 MIT Kerberos 主體格式。
    
    預設情況下，Tableau Server 使用 Active Directory 簡短名稱產生 Kerberos 主體。例如，如果 Tableau Server 為簡短名稱為 `EXAMPLE` 的 `EXAMPLE.COM` 中的使用者執行 Kerberos 委派，則主體名稱將為：`user@example`。
    
    如果您的資料庫在 Linux 上執行，您可能需要調整 krb5.conf 中的 `auth_to_local` 對應。有關編輯 krb5.conf 檔案的資訊，請參閱 [Kerberos 委派多域設定](https://help.tableau.com/v0.0/server/zh-tw/kerberos_trouble.htm#multi)。或者，您也可以執行下列命令設定 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. 為資料連線啟用委派：
    
    - **SQL Server** — 請參閱 Tableau 社群中的[為 SQL Server 啟用 Kerberos 委派](https://community.tableau.com/s/question/0D54T00000CWcplSAD/enabling-kerberos-delegation-for-sql-server)。
    - **MSAS** — 請參閱 Tableau 社群中的[為 MSAS 啟用 Kerberos 委派](https://community.tableau.com/s/question/0D54T00000G54sYSAR/enabling-kerberos-delegation-for-msas)。
    - **PostgreSQL** — 請參閱 Tableau 社群中的[為 PostgreSQL 啟用 Kerberos 委派](https://community.tableau.com/s/question/0D54T00000G54ssSAB/enabling-kerberos-delegation-for-postgresql)。
    - **Teradata** — 請參閱 Tableau 社群中的[為 Teradata 啟用 Kerberos 委派](https://community.tableau.com/s/question/0D54T00000G54tCSAR/enabling-kerberos-delegation-for-teradata)。
    - **Oracle**—請參閱 Tableau 社群中的[為 Oracle 啟用 Kerberos 委派](https://community.tableau.com/s/news/a0A4T000002O42jUAC/enable-kerberos-delegation-for-oracle)。
    - **Cloudera** — 請參閱 Tableau 社群中的[為 Hive/Impala 啟用 Kerberos 委派](https://community.tableau.com/s/question/0D54T00000CWdINSA1/enable-delegation-for-hiveimpala)。
    - **Vertica** — 請參閱 Tableau 社群中的[為 Vertica 啟用 Kerberos 委派](https://community.tableau.com/s/question/0D54T00000CWd5sSAD/enabling-kerberos-delegation-for-vertica)。
    - **TIBCO** — 請參閱 TIBCO 資料視覺效果管理指南中的[設定 Kerberos 以用於 TDV](https://docs.tibco.com/pub/tdv/8.8.0/doc/html/en-US/StudioHelp/index.html#Administration/Configuring_Kerberos_for_Use_with_TDV.html)。
    
    ## 另請參閱
    
    [Kerberos 疑難排解](https://help.tableau.com/v0.0/server/zh-tw/kerberos_trouble.htm)

## 此區段的其他文章