OpenID Connect

可以設定 Tableau Cloud 或 Tableau Cloud Manager (TCM),以支援 OpenID Connect (OIDC) 實作單一登入 (SSO)。OIDC 是一種標準驗證通訊協定,它使使用者能夠登入到諸如 Google 等身分識別提供者 (IdP) 或 Salesforce。成功登入其 IdP 後,他們將自動登入 Tableau Cloud 或 TCM

設定 OIDC 的過程包含若干步驟。本節中的主題會提供有關將 Tableau Cloud 或 TCM 與 OIDC 結合使用的一般資訊,並提供設定 IdP 和 Tableau Cloud 或 TCM 的順序。

若要使用 Tableau REST API 設定 OIDC,請參閱 Tableau REST API 說明中的 OpenID Connect 驗證方法(連結在新視窗開啟)附註:僅適用於 Tableau Cloud。

驗證概述

本節會介紹 OpenID Connect (OIDC) 在 Tableau Cloud 或 TCM 的驗證流程。

1.使用者嘗試從用戶端電腦登入 Tableau Cloud 或 TCM

2.Tableau Cloud 驗證請求重新導向 IdP 閘道。

3.提示使用者輸入認證,並成功向 IdP 進行驗證。IdP 會以重新導向回 Tableau Cloud 或 TCM 的 URL 回應。重新導向 URL 中包括使用者的授權代碼。

4.用戶端被重新導向到 Tableau Cloud 或 TCM,並顯示授權碼。

5. Tableau Cloud或 TCM 會將用戶端的授權碼及其自己的用戶端認證提供給 IdP。或 TCM 也是 IdP 的用戶端。此步驟旨在防止假冒或中間人攻擊。

6.IdP 會向 Tableau Cloud 或 TCM 傳回存取權杖和 ID 權杖。

  • JSON Web 權杖 (JWT) 驗證:預設情況下,Tableau 會執行對 IdP JWT 的驗證。在探索期間,Tableau 會擷取 IdP 設定探索文件中 jwks_uri 指定的公開金鑰。Tableau 會驗證 ID 權杖是否到期,然後驗證 JSON Web 簽章 (JWS)、簽發者 (IdP) 和用戶端 ID。您可以在 OIDC 文件 10(連結在新視窗開啟) 中了解更多有關 JWT 過程的資訊。簽名和加密(連結在新視窗開啟)以及 IETF 建議標準 JSON Web 權杖(連結在新視窗開啟)。我們建議一直啟用 JWT 驗證,除非 Idp 不支援。

  • ID 權杖是使用者的一組屬性金鑰對。該金鑰對稱為聲明。下面是使用者的一個範例 IdP 聲明:

    "sub"                     : "7gYhRR3HiRRCaRcgvY50ubrtjGQBMJW4rXbpPFpg2cptHP62m2sqowM7G1LwjN5"
    "email"                   : "alice@example.com",
    "email_verified"          : true,
    "name"                    : "Alice Adams",
    "given_name"              : "Alice",
    "family_name"             : "Adams",		

7. Tableau Cloud或 TCM 會根據 IdP 宣告識別使用者,並完成步驟 1 中的驗證請求。Tableau Cloud 設定為此過程使用不同的聲明。查看 需求

8. Tableau Cloud 或 TCM 會對使用者進行授權。

Tableau 如何使用 OpenID Connect

OpenID Connect (OIDC) 是一種靈活的通訊協定,支援服務提供者(此處為 Tableau Cloud 或 TCM)和 IdP 之間交換資訊的多種選項。以下清單提供有關 Tableau Cloud 和 TCM 實作 OIDC 的詳細資訊。這些詳細資訊可以幫助您瞭解 Tableau Cloud 或 TCM 傳送和期望哪些類型的資訊,以及如何設定 IdP。

  • Tableau Cloud 和 TCM 僅支援 OpenID 授權碼流程,如 OpenID Connect 文件中的 OpenID Connect 最終規格(連結在新視窗開啟)中所述。

  • Tableau Cloud 和 TCM 依賴使用探索或提供者 URL 來擷取 IdP中繼資料。

  • Tableau Cloud 和 TCM 支援 client_secret_basic(預設)client_secret_post 用戶端驗證,以及 OpenID Connect規範中指定的其他參數。您可以使用 Tableau REST API 設定這些資訊。

使用 OIDC 聲明的動態群組成員身份

附註:僅適用於 Tableau Cloud。

從 2024 年 6 月開始,如果設定了 OIDC 身份驗證並啟用了該功能的設定,即可透過身分識別提供者 (IdP) 傳送的 JSON Web 權杖 (JWT) 中包含的自訂聲明動態控制群組成員身份。

設定後,在使用者驗證期間,IdP 會傳送包含兩個自訂群組成員身分聲明的 OIDC 聲明:群組 (https://tableau.com/groups) 與群組名稱(例如,「Group1」和「Group2」)以聲明使用者。Tableau 會驗證該聲明,然後啟用對群組及其權限依賴這些群組的內容的存取。

有關詳情,請參閱使用聲明的動態群組成員資格

範例 JWK

"sub"                     : "7gYhRR3HiRRCaRcgvY50ubrtjGQBMJW4rXbpPFpg2cptHP62m2sqowM7G1LwjN5"
"email"                   : "alice@example.com",
"email_verified"          : true,
"name"                    : "Alice Adams",
"given_name"              : "Alice",
"family_name"             : "Adams",
"https://tableau.com/groups": ["Group1", "Group2"]