將 Salesforce.com OAuth 變更為已儲存的認證
預設情況下,Salesforce.com 連接器針對 OAuth 權杖,使用受管理的金鑰鏈,該權杖是由資料提供者為 Tableau Server 產生,並由相同站台的所有使用者共用。可以使用已儲存的用戶端 ID 和用戶端密碼設定 Tableau Server。在兩種情況下可能要執行此操作:
- Salesforce 連接器 - 若正在使用 Salesforce 連接器,則可以使用 OAuth 用戶端 ID 和密碼設定 Tableau Server,以便連接器可以使用已儲存的認證。
- 寫入 CRM Analytics - 若將 Tableau Prep 流程資料寫入 Salesforce CRM Analytics(版本 2022.3 及更高版本),請使用 OAuth 用戶端 ID 和密碼設定 Tableau Server,以便流程可以使用已儲存的認證在 Tableau Server 中執行。
- Einstein Discovery - 若要將 Einstein Discovery 擴充功能與 Tableau Server 進行整合,則需要使用 OAuth 用戶端 ID 和密碼進行設定。版本 2021.1.0 中已新增整合 Einstein Discovery 和 Tableau Server 的功能。有關詳情,請參閱設定 Einstein Discovery 整合。
本主題會介紹如何為 OAuth 已儲存的認證設定 Salesforce.com 資料來源和 Einstein Discovery 擴充功能。為每個 Tableau Server 執行個體完成這些步驟。
有關受管理的金鑰鏈和已儲存認證的更多資訊,請參閱 OAuth 連線。
附註:
- Salesforce 連接器需要受管理的金鑰鏈(預設)、全伺服器 OAuth 或特定於站台的 OAuth。
- 要為站台使用儲存的認證,必須首先設定全伺服器 OAuth。
- 無論是否設定了全站台 OAuth,都可以使用全伺服器 OAuth。
- 若使用特定於站台的 OAuth,則必須單獨設定每個站台。
- 要支援即時連線提示、編輯連線和 Web 製作,請將受管理的金鑰鏈轉換為儲存的認證以避免錯誤。
步驟摘要
請按照以下一般步驟設定 OAuth:
- 在 Salesforce 中建立已連線的應用程式。
- 使用在步驟 1 中取得的資訊來設定 Tableau Server。
- (可選)設定特定於站台的 OAuth。
第 1 步:建立 Salesforce 已連線應用程式
附註:此程序會記錄 Salesforce Lightning 中的流程。若使用的是傳統介面,則巡覽可能會有所不同,但設定相同。
登入您的 Salesforce.com 開發人員帳戶,按一下右上方您的使用者名,然後選取 [設定] 。
在左側導覽欄的「應用程式」下,選取「應用程式管理員」。
在「已連線的應用程式」區段中,按一下新建已連線的應用程式。
在基本資訊中,為應用程式命名,並逐步點選 api 欄位,這樣其會以正確的格式自動填入,然後輸入該應用程式的聯絡電子郵件。
在 API [啟用 OAuth 設定]區段中,選取啟用 OAuth 設定。
在出現的新 OAuth 設定中,為「回撥 URL」輸入您伺服器的完整網域名稱,使用
https
通訊協議,並在該 URL 中附加以下文字:auth/add_oauth_token
。例如:
https://www.your_tableau_server.com/auth/add_oauth_token
將下列項目從可用 OAuth 範圍移到所選 OAuth 範圍:
- 存取身分 URL 服務(ID、個人檔案、電子郵件、地址、電話)
- 透過 API (api) 管理使用者資料
- 隨時執行請求(refresh_token、離線存取)
按一下 [Save] (儲存)。
儲存應用程式後,Salesforce 會在 API 區段中填入以下將用於設定 Tableau Server 的 ID:
- 取用者金鑰
- 取用者密碼
- 回呼 URL
步驟 2:為 Salesforce.com OAuth 設定 Tableau Server
在 Salesforce 中建立已連線的應用程式並取得取用者金鑰、取用者密碼和回呼 URL 後,即可為 Salesforce 資料連線和輸出以及 Einstein Discovery 設定 Tableau Server。
在 Tableau Server 電腦上的命令提示字元中,執行以下命令:
tsm configuration set -k oauth.salesforce.client_id -v <your_customer_key>
tsm configuration set -k oauth.salesforce.client_secret -v <your_customer_secret>
tsm configuration set -k oauth.salesforce.redirect_uri -v <your_redirect_URL>
(可選)要變更預設登入伺服器,請鍵入以下命令:
tsm configuration set -k oauth.salesforce.server_base_url -v <URL>
輸入以下命令以套用變更:
tsm pending-changes apply
如果擱置組態需要重新啟動伺服器,
pending-changes apply
命令將顯示提示,讓您知道即將重新啟動。即使伺服器已停止,也會顯示提示,但在這種情況下不會重新啟動。您可以使用--ignore-prompt
選項隱藏提示,但這樣做不會改變重新啟動行為。如果變更不需要重新啟動,則不會出現提示即可套用變更。有關詳情,請參閱 tsm pending-changes apply。
為站台設定自訂 OAuth
可以為站台設定自訂 Salesforce OAuth 用戶端。
考慮將自訂 OAuth 用戶端設定為 1) 如果是為伺服器設定,則覆寫 OAuth 用戶端;或 2) 啟用支援安全連線到需要唯一 OAuth 用戶端的資料。
設定自訂 OAuth 用戶端時,站台等級設定優先於任何伺服器端設定,並且預設情況下建立的所有新 OAuth 憑證都使用站台等級 OAuth 用戶端。無須重新啟動 Tableau Server 即可使設定生效。
重要提示:在設定自訂 OAuth 用戶端之前建立的現有 OAuth 憑證暫時可用,但伺服器管理員和使用者都必須更新其保存的憑證以幫助確保能不間斷存取資料。
1:準備 OAuth 用戶端 ID、用戶端密碼以及重新定向 URL
在設定自訂 OAuth 用戶端之前,需要以下列出的資訊。準備好這些資訊後,就可以為站台註冊自訂 Oauth 用戶端。有關詳細資訊,請參閱以上使用 Snowflake 註冊 OAuth 用戶端一節。
OAuth 用戶端 ID 和用戶端密碼:首先向資料提供者(連接器)註冊 OAuth 用戶端以檢索為 Tableau Server 產生的用戶端 ID 和密碼。
重新導向 URL:注意正確的重新導向 URL。您將在下方的步驟 2 註冊過程中需要它。
https://<伺服器名稱> .com/auth/add_oauth_token
例如,https://example.com/auth/add_oauth_token
2:註冊 OAuth 用戶端 ID 與用戶端密碼
按照下面描述的過程將自訂 OAuth 用戶端註冊到站台。
(2024.1 及更早版本)在 Tableau Server 電腦上執行以下命令,以啟用 Snowflake OAuth 服務:
tsm configuration set -k native_api.enable_snowflake_privatelink_on_server -v true
附註:對於 2024.2 及更高版本,無論是否使用 Snowflake 私人連線,請跳過步驟 1。
使用管理員認證登入 Tableau 伺服器站台,並轉到「設定」頁面。
在 OAuth 用戶端登錄檔下,按一下「新增 OAuth 用戶端」按鈕。
輸入所需資訊,包括上述步驟 1 中的資訊:
對於「連線類型」,請選取要設定其自訂 OAuth 用戶端的連接器。
而「用戶端 ID」、「用戶端密碼」和「重新導向 URL」,請輸入在上述步驟 1 中準備的資訊。
按一下「新增 OAuth 用戶端」按鈕以完成註冊過程。
(可選)對所有支援的連接器重複步驟 3。
- 按一下「設定」頁面底部或頂部的「儲存」按鈕以儲存變更。
3:驗證和更新儲存的憑證
為幫助確保能不間斷存取資料,您(和您的站台使用者)必須刪除之前儲存的憑證並再次新增憑證,以使用站台的自訂 OAuth 用戶端。
巡覽至「我的帳戶設定」頁面。
在「儲存的資料來源憑證」下,執行以下動作:
按一下上述步驟 2 中設定的自訂 OAuth 用戶端連接器的現有已儲存憑證旁邊的「刪除」。
在連接器名稱旁邊,按一下「新增」並按照提示,1) 連線到在上述步驟 2 中設定的自訂 OAuth 用戶端,以及 2) 儲存最新的憑證。
4:通知使用者更新已儲存的認證
確保通知站台使用者更新他們為連接器儲存的憑證,該連接器的自訂 OAuth 用戶端即為上述步驟 2 中設定的。站台使用者可以使用更新儲存的認證中描述的過程來更新他們保存的憑證。
管理存取權杖
針對 OAuth 設定伺服器之後,您可以允許使用者在其組態檔設定中管理其自己的存取權杖,或者您可以集中管理這些權杖。有關詳情,請參閱允許已儲存的存取權杖。