共用方式為


設定 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 未安裝

設定伺服器架構驗證

  1. 在部署工具伺服器角色執行所在的 Dynamics 365 Server 上,啟用 Azure Active Directory Module for Windows PowerShell。

    重要

    執行下列 PowerShell 命令的電腦必須具有先前「確認先決條件」中所述之必要軟體功能。

  2. 準備憑證。

    $CertificateScriptWithCommand = “.\CertificateReconfiguration.ps1 -certificateFile c:\Personalcertfile.pfx -password personal_certfile_password -updateCrm -certificateType S2STokenIssuer -serviceAccount contoso\CRMWebApplicationService -storeFindType FindBySubjectDistinguishedName”
    
     Invoke-Expression -command $CertificateScriptWithCommand
    
  3. 準備 PowerShell 工作階段。

    下列 Cmdlet 可讓電腦接收遠端命令,並將 Office 365 模組新增至 PowerShell 工作階段。

    Enable-PSRemoting -force
    New-PSSession
    Import-Module MSOnline -force
    Import-Module MSOnlineExt -force
    
  4. 連線至 Office 365。

    執行 Connect-MsolService 命令時,您必須提供具備 Office 365 全域管理員成員資格所需 SharePoint Online 授權的有效 Microsoft 帳戶。

    如需此處所列 Azure Active Directory PowerShell 命令其每個 每個 MSOnline 模組的詳細資訊,請參閱 MSOnline

    $msolcred = get-credential
    connect-msolservice -credential $msolcred
    
  5. 設定憑證。

    $Certificate = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2
    $Certificate.Import(“c:\Personalcertfile.cer”)
    $CERCertificateBin = $Certificate.GetRawCertData()
    $CredentialValue = [System.Convert]::ToBase64String($CERCertificateBin)
    
  6. 在 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
    
  7. 針對 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 整合精靈

  1. 在 Customer Engagement (on-premises) 中,移至文件管理

  2. 在 [文件管理] 區域中,選擇啟用伺服器架構 SharePoint 整合

  3. 檢閱資訊,然後選取下一步

  4. 對於 SharePoint 網站,選取線上,然後選取下一步

  5. 在 [準備網站] 階段中輸入下列資訊。

    • 輸入 SharePoint Online 網站集合 URL,例如 https://contoso.sharepoint.com/sites/salesteam

    • 輸入用戶識別碼。 其他資訊:取得 SharePoint Online 用戶識別碼

  6. 選取下一步

  7. 驗證網站區段隨即出現。 如果所有網站皆判定為有效,則選取啟用。 如果有一個或多個網站判定為無效,請參閱疑難排解伺服器架構驗證

取得 SharePoint Online 用戶識別碼

使用 PowerShell

  1. 在適用於 Windows PowerShell 命令介面的 Azure Active Directory 模組中,執行以下命令。

    $CRMContextId = (Get-MsolCompanyInformation).ObjectID
    $CRMContextId
    
  2. 將顯示的 GUID 複製道剪貼簿。

使用網站設定

  1. 登入將用於 Customer Engagement (on-premises) 文件管理的 SharePoint 網站集合。

  2. 移至網站設定>網站應用程式權限

    用戶識別碼會顯示在應用程式識別碼底下,在 @ 符號右邊。 只複製和貼上 GUID。 請勿貼入 @ 左邊識別碼的任何部分。

疑難排解啟用伺服器架構驗證精靈驗證問題

失敗的驗證。 用於伺服器對伺服器驗證的憑證遺失或無效時,可能傳回此錯誤。