設定 Customer Engagement (on-premises) 和 SharePoint Online 的伺服器架構驗證
本主題描述如何設定 Dynamics 365 Customer Engagement (on-premises) 和 Microsoft SharePoint Online 之間的伺服器架構驗證。
需要權限
Customer Engagement (on-premises)
系統管理員資訊安全角色。 這是在 Customer Engagement (on-premises) 中執行 [啟用伺服器架構 SharePoint 整合] 精靈所需的必要項。
如果為評估用途使用自我簽署憑證,您必須擁有執行 Microsoft Dynamics 365 Server 所在電腦的本機系統管理員群組成員資格。
SharePoint Online
- Office 365 全域管理員成員資格。 這對 Office 365 訂閱進行管理層級存取,以及執行 Microsoft Azure PowerShell Cmdlet 來說有其必要
設定 Customer Engagement (on-premises) 和 SharePoint Online 的伺服器架構驗證
依提供的順序執行步驟,以設定 Customer Engagement (on-premises) 與 SharePoint Online。
重要
-
必須依照提供的順序完成此處所述的步驟。 如果未完成工作 (例如傳回錯誤訊息的 Windows PowerShell 命令),必須先將目標解決,才能繼續執行下一個命令、工作或步驟。
-
啟用伺服器架構 SharePoint 整合之後,您無法還原為先前的用戶端驗證方法。 這表示您無法使用 Microsoft Dynamics CRM 清單元件,在您設定 Customer Engagement (on-premises) 應用程式組織進行伺服器架構 SharePoint 整合之後。
-
若要將相同 Customer Engagement (on-premises) 部署中的多個 Customer Engagement (on-premises) 組織連線至多個 SharePoint Online 網站,SharePoint Online 網站必須位於相同 Microsoft Office 365 組織內。
確認先決條件
在您設定 Customer Engagement (on-premises) 和 SharePoint Online 進行伺服器架構驗證之前,必須符合下列先決條件:
Customer Engagement (on-premises) 部署必須已設定並可透過網際網路使用。 其他資訊:設定 Dynamics 365 for Customer Engagement (on-premises) 的 IFD
Microsoft Dynamics 365 Hybrid Connector。 Microsoft Dynamics 365 Hybrid Connector 是免費連接器,可讓您將伺服器架構驗證搭配 Dynamics 365 (on-premises) 和 SharePoint Online 使用。 其他資訊:Microsoft Dynamics CRM 混合式連接器
由信任的憑證授權單位發行的 x509 數位憑證,將用於 Customer Engagement (on-premises) 和 SharePoint Online 之間的驗證。 如果您評估伺服器架構驗證,您可以使用自我簽署憑證。
必須有下列軟體功能,才能執行本主題所述的 Windows PowerShell Cmdlet。
重要
撰寫本文時,適用於 IT 專業人員的 Microsoft Online Services 登入小幫手 RTW 版本有問題。 在解決問題之前,建議您使用 Beta 版 其他資訊:Microsoft Azure 論壇:無法安裝 Azure Active Directory Module for Windows PowerShell。MOSSIA 未安裝。
設定伺服器架構驗證
在部署工具伺服器角色執行所在的 Dynamics 365 Server 上,啟用 Azure Active Directory Module for Windows PowerShell。
重要
執行下列 PowerShell 命令的電腦必須具有先前「確認先決條件」中所述之必要軟體功能。
準備憑證。
$CertificateScriptWithCommand = “.\CertificateReconfiguration.ps1 -certificateFile c:\Personalcertfile.pfx -password personal_certfile_password -updateCrm -certificateType S2STokenIssuer -serviceAccount contoso\CRMWebApplicationService -storeFindType FindBySubjectDistinguishedName” Invoke-Expression -command $CertificateScriptWithCommand
準備 PowerShell 工作階段。
下列 Cmdlet 可讓電腦接收遠端命令,並將 Office 365 模組新增至 PowerShell 工作階段。
Enable-PSRemoting -force New-PSSession Import-Module MSOnline -force Import-Module MSOnlineExt -force
連線至 Office 365。
執行 Connect-MsolService 命令時,您必須提供具備 Office 365 全域管理員成員資格所需 SharePoint Online 授權的有效 Microsoft 帳戶。
如需此處所列 Azure Active Directory PowerShell 命令其每個 每個 MSOnline 模組的詳細資訊,請參閱 MSOnline。
$msolcred = get-credential connect-msolservice -credential $msolcred
設定憑證。
$Certificate = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2 $Certificate.Import(“c:\Personalcertfile.cer”) $CERCertificateBin = $Certificate.GetRawCertData() $CredentialValue = [System.Convert]::ToBase64String($CERCertificateBin)
在 SharePoint 中設定 Azure Active Directory 服務主體名稱 (SPN)。
以 Microsoft Dynamics 365 Server 所在的網域名稱取代 *.contoso.com。
重要
僅支援非對稱金鑰做為
New-MsolServicePrincipalCredential
命令中的 Type 參數。 對稱金鑰或密碼金鑰不安全且處於停用狀態。$RootDomain = “*.contoso.com” $CRMAppId = "00000007-0000-0000-c000-000000000000" New-MsolServicePrincipalCredential -AppPrincipalId $CRMAppId -Type asymmetric -Usage Verify -Value $CredentialValue $CRM = Get-MsolServicePrincipal -AppPrincipalId $CRMAppId $ServicePrincipalName = $CRM.ServicePrincipalNames $ServicePrincipalName.Remove("$CRMAppId/$RootDomain") $ServicePrincipalName.Add("$CRMAppId/$RootDomain") Set-MsolServicePrincipal -AppPrincipalId $CRMAppId -ServicePrincipalNames $ServicePrincipalName
針對 SharePoint 的伺服器架構驗證設定 Microsoft Dynamics 365 Server 伺服器。
Add-PSSnapin Microsoft.Crm.PowerShell $setting = New-Object "Microsoft.Xrm.Sdk.Deployment.ConfigurationEntity" $setting.LogicalName = "ServerSettings" $setting.Attributes = New-Object "Microsoft.Xrm.Sdk.Deployment.AttributeCollection" $attribute1 = New-Object "System.Collections.Generic.KeyValuePair[String, Object]" ("S2SDefaultAuthorizationServerPrincipalId", "00000001-0000-0000-c000-000000000000") $setting.Attributes.Add($attribute1) $attribute2 = New-Object "System.Collections.Generic.KeyValuePair[String, Object]" ("S2SDefaultAuthorizationServerMetadataUrl", "https://accounts.accesscontrol.windows.net/metadata/json/1") $setting.Attributes.Add($attribute2) Set-CrmAdvancedSetting -Entity $setting
執行啟用伺服器架構 SharePoint 整合精靈
在 Customer Engagement (on-premises) 中,移至文件管理。
在 [文件管理] 區域中,選擇啟用伺服器架構 SharePoint 整合。
檢閱資訊,然後選取下一步。
對於 SharePoint 網站,選取線上,然後選取下一步。
在 [準備網站] 階段中輸入下列資訊。
輸入 SharePoint Online 網站集合 URL,例如
https://contoso.sharepoint.com/sites/salesteam
。輸入用戶識別碼。 其他資訊:取得 SharePoint Online 用戶識別碼
選取下一步。
驗證網站區段隨即出現。 如果所有網站皆判定為有效,則選取啟用。 如果有一個或多個網站判定為無效,請參閱疑難排解伺服器架構驗證。
取得 SharePoint Online 用戶識別碼
使用 PowerShell
在適用於 Windows PowerShell 命令介面的 Azure Active Directory 模組中,執行以下命令。
$CRMContextId = (Get-MsolCompanyInformation).ObjectID $CRMContextId
將顯示的 GUID 複製道剪貼簿。
使用網站設定
登入將用於 Customer Engagement (on-premises) 文件管理的 SharePoint 網站集合。
移至網站設定>網站應用程式權限。
用戶識別碼會顯示在應用程式識別碼底下,在 @ 符號右邊。 只複製和貼上 GUID。 請勿貼入 @ 左邊識別碼的任何部分。
疑難排解啟用伺服器架構驗證精靈驗證問題
失敗的驗證。 用於伺服器對伺服器驗證的憑證遺失或無效時,可能傳回此錯誤。