您位於此處:
設定外部用戶端應用程式的 SAML 2.0 設定與原則
若要將服務提供者與您的 Salesforce 組織整合,您可以使用實作 SAML 2.0 以進行使用者驗證的外部用戶端應用程式。在服務提供者或身分提供者起始流程時,Salesforce 支援 SAML 單一登入 (SSO)。若要使用此選項,請為您的服務提供者設定已啟用 SAML 2.0 的外部用戶端應用程式。將 Salesforce 組織定義為 SAML 身分提供者。
| 提供版本:Lightning Experience |
| 提供版本:Professional、Performance、Unlimited 及 Developer Edition |
| 需要的使用者權限 | |
|---|---|
| 設定外部用戶端應用程式 SAML 設定 | 建立、編輯和刪除外部用戶端應用程式 |
例如,假設您建立自訂的「您的優惠」Web 應用程式,以實作 SAML 2.0 以進行使用者驗證。您希望使用者能夠使用本身的 Salesforce 認證來登入此應用程式。若要設定此 SSO 流程,請將「您的優惠」Web 應用程式設定為外部用戶端應用程式。將您的 Salesforce 組織定義為外部用戶端應用程式的 SAML 身分提供者。您的使用者現在即可使用 Salesforce 認證來登入「您的優惠」Web 應用程式。
- 完成定義服務提供者的先決條件。
- 建立外部用戶端應用程式,並完成其 基本資訊。
- 在「Web 應用程式 (啟用 SAML 設定)」區段中,選取「啟用 SAML」。
-
輸入必要資訊,可從您的服務提供者取得。
- 實體識別碼
- 服務提供者的全域唯一識別碼。如果您要從服務提供者存取多個應用程式,請定義服務提供者。然後使用
RelayState參數附加 URL 值,以在登入後將使用者導向至正確的應用程式。 - ACS URL
- 判斷取用者服務的 URL。這是接收 SAML 判斷式的服務提供者端點。
- 主題類型
- 指定定義應用程式使用者身分的欄位。選項包括使用者的使用者名稱、聯合識別碼、15 個字元的使用者識別碼、以演算法計算的永久識別碼或自訂屬性。自訂屬性可以是新增至組織中「使用者」物件的任何自訂欄位,只要其為下列其中一種資料類型:電子郵件、文字、URL 或公式 (含「文字傳回類型」)。如果您針對主題類型選取「 自訂屬性 」,Salesforce 會顯示「自訂屬性」欄位,其中包含組織中可用「使用者」物件自訂欄位的清單。
- 名稱識別碼格式
- 指定在 SAML 訊息中傳送的格式屬性。預設選取項目為「不指定」。視您的 SAML 服務提供者而定,您可以將格式設定為電子郵件地址、永久或暫時。如果您將格式設定為電子郵件地址,則您的身分提供者會在 SAML 訊息中以不同的方式描述組織使用者和 Experience Cloud 使用者。針對組織使用者,SAML 訊息僅包含使用者的電子郵件地址。此範例顯示當組織使用者登入時傳送的 SAML 訊息,且設定為
emailAddress的 NameID 格式。
針對 Experience Cloud 使用者,SAML 訊息會將組織識別碼附加至使用者的電子郵件地址。此範例顯示當 Experience Cloud 使用者登入時傳送的 SAML 訊息,且將 NameID 格式設定為<saml:Subject> <saml:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress"> sandy@salesforce.com</saml:NameID> <saml:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer"> <saml:SubjectConfirmationData NotOnOrAfter="2021-02-04T20:24:41.098Z" Recipient= "https://playground-test.salesforce.com?so=00DR00000000R6N"/> </saml:SubjectConfirmation> </saml:Subject>emailAddress。
如果您的服務提供者僅接受電子郵件地址,而不接受組織識別碼,請為電子郵件地址建立自訂屬性。請參閱 設定外部用戶端應用程式的自訂屬性。<saml:Subject> <saml:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress"> 00DR00000008fLq@sandy@play-test.com</saml:NameID> <saml:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer"> <saml:SubjectConfirmationData NotOnOrAfter="2021-02-04T20:17:12.647Z" Recipient= "https://playground-test.salesforce.com?so=00DR00000000R6N"/> </saml:SubjectConfirmation> </saml:Subject> - 核發者
- 依預設,您組織的「我的網域」登入 URL 是身分提供者的標準核發者。如果您的 SAML 服務提供者要求不同的值,請在此處指定。
-
若要在使用者登出 Salesforce 時自動將使用者登出外部用戶端應用程式服務提供者:
- 選取「啟用單一登出」。
- 輸入服務提供者的單一登出端點。使用者登出 Salesforce 時,Salesforce 會將登出要求傳送至此 URL。單一登出 URL 必須是以 https:// 為開頭的絕對 URL。
-
為服務提供者提供 Salesforce IdP SLO 端點。
此端點會在您的「SAML 登入資訊」中列為「單一登出端點」。此外也會在「SAML 中繼資料」檔案中列為「探索端點」。端點的格式為 https://MyDomainName.my.salesforce.com/services/auth/idp/saml2/logout,其中 MyDomainName 是您組織的「我的網域」名稱。
- 選取服務提供者針對單一登出提供的 HTTP 繫結類型。
-
如果您的服務提供者需要唯一的憑證來驗證 Salesforce 的 SAML 要求,請從您的系統上載憑證。否則,請將此設定保留為
Default IdP Certificate。憑證大小上限為 4 KB。 -
如果服務提供者已提供給您安全性憑證,請選取「驗證要求簽章」。瀏覽系統以找出憑證並上載。
只有在您計畫從服務提供者開始登入 Salesforce 且服務提供者簽署其 SAML 要求時,才需要憑證。重要 如果您上載憑證,必須簽署所有的 SAML 要求。如果未上載任何憑證,將接受所有的 SAML 要求。
-
若要加密回應,請選取「加密 SAML 回應」,以瀏覽系統以取得憑證並加以上載。選取用於加密判斷式的加密方法。
有效的加密演算法值為
AES-128(128 位元金鑰) 和AES-256(256 位元金鑰)。 -
針對「SAML 訊息的簽署演算法」,選取「SHA1」或「SHA256」以保護從 Salesforce 組織傳送的 SAML 訊息。
Salesforce 作為身分提供者,會將所選的演算法套用到本身的 SAML 要求和回應。所選的簽署演算法會套用到從您組織到服務提供者的單一登入和單一登出訊息。
- 在您為外部用戶端應用程式設定所有設定後,請儲存您的工作。
