本文的目的是說明在 Salesforce 和 Microsoft Entra ID 中執行的步驟,以自動將用戶帳戶從 Microsoft Entra ID 布建和取消布建至 Salesforce。
必要條件
本文所描述的情境假設您已經擁有下列項目:
- 一個具有有效訂閱的 Microsoft Entra 用戶帳戶。 如果您還沒有帳戶,您可以 免費建立帳戶。
- 下列其中一個角色:
Salesforce.com 租用戶。
Salesforce 帳戶使用者名稱和密碼,以及令牌。 如需如何取得令牌,請參閱 設定自動用戶帳戶布建 。 未來,如果您重設帳戶密碼,Salesforce 會提供新的令牌,而且您需要編輯 Salesforce 布建設定。
在 Salesforce 中用於整合用戶的自定義用戶設定檔。 在 Salesforce 平台上創建自訂檔案後,請編輯該檔案的管理許可權以啟用以下權限:
已啟用 API。
管理使用者:啟用此選項會自動啟用下列專案:指派許可權集合、管理內部使用者管理IP位址、管理登入存取原則、管理密碼原則、管理配置檔和許可權集合、管理角色、管理共用、重設用戶密碼和解除鎖定使用者、檢視所有使用者、檢視角色和階層、檢視設定和設定。
請參閱 Salesforce 建立或複製使用者設定檔 文件。
注意
直接將許可權指派給此使用者檔案。 請勿透過許可權集合新增許可權。
重要
如果您使用 Salesforce.com 試用版帳戶,您將無法設定自動使用者布建。 試用帳戶在購買之前未啟用必要的 API 存取權。 您可以使用免費的 開發人員帳戶 來完成本文,以解決此問題。
如果您使用 Salesforce 沙箱環境,請參閱 Salesforce Sandbox 整合一文。
規劃將使用者指派給 Salesforce
Microsoft Entra ID 會使用稱為「指派」的概念,來判斷哪些使用者應獲得指定應用程式的存取權。 在自動使用者帳戶佈建的情況中,只有「獲指派」至 Microsoft Entra ID 內應用程式的使用者和群組,才會進行同步處理。
在設定並啟用佈建服務之前,您必須決定 Microsoft Entra ID 中的哪些使用者或群組需要存取 Salesforce 應用程式。
將使用者指派給 Salesforce 的重要秘訣
建議將單一Microsoft Entra 使用者指派給 Salesforce,以測試布建組態。 您可以透過指派 使用者中所述的機制,稍後指派更多使用者和/或群組。
將使用者指派給 Salesforce 時,必須選取有效的使用者角色。 「預設存取」角色無法用於資源佈建。 請注意,某些角色可能需要 Salesforce 中的授權。
注意
在布建程式中,Microsoft Entra 會從 Salesforce 匯入配置檔。 從 Salesforce 匯入的設定檔會顯示為 Microsoft Entra ID 中的應用程式角色,您可以在指派 Microsoft Entra ID 中的使用者時進行選取。 如果您想要將使用者分配給自訂的個人設定檔,請先等待從 Salesforce 匯入個人設定檔,再將使用者分配給應用程式。 請注意,執行角色匯入時,不應該在Microsoft Entra ID 中手動編輯應用程式角色。
識別 Salesforce 中的現有使用者
在與 Microsoft Entra 整合之前,您的 Salesforce 帳戶可能已經有一或多個使用者,由 Salesforce 系統管理員或其他程式建立。 您可以使用 Salesforce 導出資料功能來判斷哪些使用者已經存在。 如需詳細資訊,請參閱 從 Salesforce 匯出備份數據。 從 Salesforce 匯出時,請確定 User
資料包含在匯出的數據集中,然後選取匯出檔案編碼,以允許組織中的所有使用者名稱,例如 Unicode (UTF-8)
。
從 Salesforce 匯出資料之後,您就可以在 Excel 或 PowerShell 中擷取 User.csv
檔案並開啟,以檢視已在 Salesforce 中的使用中用戶清單。
import-csv .\User.csv | where {$_.IsActive -eq '1'} | sort UserName | ft UserName
啟用自動使用者配置
本節會引導您將Microsoft Entra ID 連線至 Salesforce 的用戶帳戶布建 API - v40。
提示
您也可以選擇為 Salesforce 啟用 SAML 型單一 Sign-On,並遵循 Azure 入口網站中提供的指示。 可以獨立設定單一登入,而不是與自動佈建相依,儘管這兩個功能彼此互補。
設定使用者帳戶自動設置
本節的目標是概述如何啟用 Active Directory 使用者帳戶至 Salesforce 的使用者佈建。
以至少雲端應用程式管理員身分登入 Microsoft Entra 系統管理中心。
流覽至 Entra ID>企業應用程式。
如果您已經設定了 Salesforce 的單一登入功能,請使用 [搜尋] 欄位搜尋您的 Salesforce 執行個體。 否則,請選取 [新增],並在應用程式庫中搜尋 [Salesforce]。 從搜尋結果中選取 Salesforce,並將它新增至您的應用程式清單。
選取您的 Salesforce 執行個體,然後選取 [佈建] 索引標籤。
將 [佈建模式] 設定為 [自動]。
在 [管理員認證] 區段下,提供下列組態設定:
在 系統管理員用戶名稱 文本框中,輸入一個在 Salesforce.com 中被指派為 系統管理員 角色的 Salesforce 帳戶名稱。
在 [管理員密碼] 文字方塊中,輸入這個帳戶的密碼。
若要取得您的 Salesforce 安全性權杖,請開啟新索引標籤並登入相同的 Salesforce 系統管理員帳戶。 在頁面右上角,選取您的名稱,然後選取 [ 設定]。
在左側瀏覽窗格中,選取 [ 我的個人資訊 ] 以展開相關區段,然後選取 [ 重設我的安全性令牌]。
在 [ 重設安全性令牌 ] 頁面上,選取 [ 重設安全性令牌 ] 按鈕。
] 選項
檢查與此系統管理員帳戶相關聯的電子郵件收件匣。 尋找來自 Salesforce.com,包含新安全性權杖的電子郵件。
複製該權杖,移至您的 Microsoft Entra 視窗,然後將它貼到 [祕密權杖] 欄位。
如果 Salesforce 實例位於 Salesforce Government Cloud 上,則應該輸入 租使用者 URL 。 否則,這是選擇性的。 以
https://<your-instance>.my.salesforce.com
格式輸入租戶 URL,並將<your-instance>
替換為您的 Salesforce 實例名稱。選取 [測試連線],以確定 Microsoft Entra ID 可以連線至您的 Salesforce 應用程式。
在 [通知電子郵件] 欄位中輸入應收到佈建錯誤通知的個人或群組之電子郵件地址,然後勾選下列核取方塊。
選擇 [儲存]。
在 [對應] 區段底下,選取 [將 Microsoft Entra 使用者同步至 Salesforce]。
在 [屬性對應] 區段中,檢視從 Microsoft Entra ID 同步到 Salesforce 的使用者屬性。 請注意,選取為 [比對] 屬性的屬性會用來比對 Salesforce 中的使用者帳戶以進行更新作業。 選取 [儲存] 按鈕以認可任何變更。
如要啟用 Salesforce 的 Microsoft Entra 佈建服務,請在 [設定] 區段中,將 [佈建狀態] 變更為 [開啟]
選擇 [儲存]。
注意
一旦在 Salesforce 應用程式中佈建了使用者,管理員就必須為這些使用者設定語言特定設定。 如需語言設定的詳細資訊,請參閱 這篇文章 。
這會啟動在 [使用者和群組] 區段中指派給 Salesforce 的任何使用者和/或群組之首次同步處理。 初始同步處理會比後續同步處理花費更多時間執行,只要服務正在執行,這大約每 40 分鐘便會發生一次。
監測
您可以使用 [同步處理詳細資料] 區段來監視進度,並依循連結前往佈建活動記錄,此記錄會描述您 Salesforce 應用程式上佈建服務所執行的所有動作。
如需如何讀取Microsoft Entra 布建記錄的詳細資訊,請參閱 關於自動用戶帳戶布建的報告。
指派使用者
測試完成後,且使用者已成功配置至 Salesforce,您需要確保所有其他需要 Salesforce 的使用者都被分配到應用程式中的角色。 這包括目前在 Salesforce 中擁有作用中帳戶的任何使用者,如 識別 Salesforce 中現有使用者一節所述。 您可以遵循這裡的其中一個指示,將這些和任何其他授權的使用者指派給 Microsoft Entra 中的 Salesforce 應用程式:
- 您可以在 Microsoft Entra 系統管理中心 將個別使用者指派給應用程式,
- 您可以透過 Microsoft Graph 或 PowerShell Cmdlet
New-MgServicePrincipalAppRoleAssignedTo
將個別使用者指派給應用程式, 或 - 如果您的組織具有 Microsoft Entra ID Governance 的授權,您也可以 部署權利管理原則,以將存取指派自動化、新增或移除人員加入組織時的工作分派,或離開或變更角色。 您可以 為此應用程式建立權利管理存取套件。 您可以為獲指派存取權 (由 系統管理員要求指派、根據規則自動指派,或透過 生命週期工作流程 指派) 的使用者設定原則。
當指派給應用程式的使用者在 Microsoft Entra ID 中更新時,這些變更會自動布建至 Salesforce。
常見問題
- 如果您在啟用 Salesforce 的布建功能時遇到問題,請確定下列事項:
- 使用的認證具有 Salesforce 的管理員存取權。
- 您使用的 Salesforce 版本支援 Web 存取(例如 Developer、Enterprise、Sandbox 和 Unlimited 版本的 Salesforce。
- 已為使用者啟用 Web API 存取。
- Microsoft Entra 佈建服務支援為使用者佈建語言、地區設定和時區。 這些屬性位於預設屬性對應中,但沒有預設來源屬性。 確定您選取的是預設來源屬性,且來源屬性的格式為 SalesForce 所預期的格式。 例如,english(UnitedStates) 的 localeSidKey 是 en_US。 請檢閱 此處 提供的指引,以判斷適當的localeSidKey格式。 您可以在這裡找到 languageLocaleKey 格式。 除了確保格式正確之外,您可能需要確保為您的使用者啟用了語言,如 這裡所述。
- SalesforceLicenseLimitExceeded: 無法在 Salesforce 中建立使用者,因為此使用者沒有可用的授權。 為目標應用程式採購其他授權,或 檢閱您的使用者指派 ,以確保已指派正確的使用者。
- SalesforceDuplicateUserName: 用戶無法布建,因為該用戶在另一個 Salesforce.com 租用戶中有重複的 Salesforce.com 用戶名稱。 在 Salesforce.com 中,'Username' 屬性的值在所有 Salesforce.com 租用戶之間必須是唯一的。 依預設,Microsoft Entra ID 中使用者的 userPrincipalName 會在 Salesforce.com 中變成其 'Username'。 您有兩個選項。 其中一個選項是在其他 Salesforce.com 租用戶中尋找並重新命名具有重複 'Username' 的使用者 (如果您也管理該租用戶)。 另一個選項是移除 Microsoft Entra 使用者對與您的目錄整合的 Salesforce.com 租用戶的存取權。 我們會在下一次同步嘗試時重試此作業。
- SalesforceRequiredFieldMissing: Salesforce 需要使用者上存在特定屬性,才能成功建立或更新使用者。 此使用者遺漏其中一個必要屬性。 請確保您想要佈建至 Salesforce 的所有使用者的屬性,如電子郵件和別名,都已填入。 您可以使用 屬性型範圍篩選來限定沒有這些屬性的用戶範圍。
- 用於部署到 Salesforce 的預設屬性映射包括 SingleAppRoleAssignments 運算式,能將 Microsoft Entra ID 中的 appRoleAssignments 對應到 Salesforce 中的 ProfileName。 請確定使用者在 Microsoft Entra ID 中沒有多個應用程式角色指派,因為屬性對應僅支援布建一個角色。 如果您有一群使用者,其中該群組被指派為一個角色,那麼該群組的成員不能直接被指派具有不同角色的 Salesforce 應用程式。
- Salesforce 要求手動核准電子郵件更新後,才能進行變更。 因此,您可能會在配置日誌中看到多個項目,更新使用者的電子郵件(一直到電子郵件變更獲得核准為止)。