共用方式為


Azure 與 Microsoft Dynamics CRM 整合

 

發行︰ 2016年11月

適用於: Dynamics CRM 2015

透過耦合 Dynamics 365 事件執行管線至 Microsoft Azure 服務匯流排,Microsoft Dynamics CRM 2015 和 Microsoft Dynamics CRM Online 2015 更新 可連線至 Microsoft Azure 平台。 此連線可將做為目前 Dynamics 365 作業的一部分處理的資料張貼至匯流排。 「Dynamics 365 感知」的 Microsoft Azure 服務匯流排 解決方案可以透過 Microsoft Dynamics 365 接聽和讀取張貼在服務匯流排上的資料。 張貼資料儲存為 IExecutionContext 類別的執行個體是 RemoteExecutionContext 的延伸版本,在執行階段的傳送至 Microsoft Dynamics 365 非同步外掛程式。

Microsoft Dynamics 365 和 Microsoft Azure 平台間的連線,提供了一種與外部雲端型企業營運 (LOB) 應用程式溝通 Dynamics 365 執行階段資料的安全管道。

本主題內容

連線的重要元素

從 CRM 到服務匯流排案例

在 CRM 與 Azure 解決方案間建立合約

執行階段錯誤之管理

連線的重要元素

實作 Microsoft Dynamics 365 和 Microsoft Azure 服務匯流排 之間連線的重要元素顯示如下。

  • 非同步服務
    非同步服務負責所張貼 Microsoft Dynamics 365 遠端執行內容至 Microsoft Azure 服務匯流排。 每篇文章由非同步服務的系統作業執行。 使用者可以使用 Microsoft Dynamics 365 Web 應用程式檢視所有系統作業狀態。

  • 外掛程式
    連線功能支援兩種非同步已註冊的外掛程式:隨附在 Dynamics 365 的內建 (OOB) 外掛程式,以及自訂外掛程式。 如需搭配 Microsoft Azure 使用同步作業外掛程式的詳細資訊,請參閱 存取通知服務

    Azure 感知的外掛程式隨附於 Dynamics 365。 此外掛程式完全信任 Microsoft Dynamics 365 平台。 已用 Microsoft Dynamics 365登錄後,外掛程式非同步服務來張貼當前請求的內容至 Microsoft Azure 服務匯流排。 開發人員必須註冊可識別目標訊息和實體的外掛程式步驟,才能啟用服務匯流排張貼功能。

    您也可以編寫您的「Azure 感知」自訂外掛程式。 自訂外掛程式在沙箱中以部分信任模式執行,可在呼叫任何 Microsoft Dynamics CRM SDK 方法。 自訂外掛程式可能會透過包含一些通知非同步服務張貼請求內容的標準代碼作業,開始發佈 Microsoft Dynamics 365 內容至服務匯流排。 此雲端特定代碼讓外掛程式有「Azure 感知」的能力。 如需一般外掛程式的詳細資訊,請參閱撰寫外掛程式。 如需 Azure 感知外掛程式的詳細資訊,請參閱 撰寫自訂的 Azure 感知外掛程式

  • 自訂工作流程活動
    自訂工作流程活動會覆寫以張貼目前請求的資料內容至 Microsoft Azure 服務匯流排。其他資訊:範例:Azure 認知自訂工作流程活動

  • Microsoft Azure 服務匯流排
    服務匯流排中繼 Microsoft Dynamics 365 和 Microsoft Azure 服務匯流排 解決方案接聽者之間的遠端執行內容。Microsoft Azure Active Directory 存取控制服務 (ACS) 管理宣告型驗證安全性。

  • Microsoft Azure 解決方案
    如要 Dynamics 365 和 Azure 連線功能能夠運作,則 Microsoft Azure 服務匯流排 解決方案帳戶中至少要有一個解決方案,該解決方案需包含一個或多個服務端點。 對於中繼端點合約,Dynamics 365 感知的接聽程式必須有效地執行您在端點在服務匯流排的 Dynamics 365 要求。 對於佇列端點合約,接聽程式不需要主動地接聽。 接聽程式在連接 Microsoft.Xrm.Sdk 組件才會具備 Dynamics 365 感知能力,因此也定義了 RemoteExecutionContext 類型。其他資訊:為 Microsoft Azure 解決方案撰寫接聽程式

    必須設定解決方案規則以允許 Microsoft Dynamics 365 遠端執行內容,張貼至服務匯流排。 若要啟用此張貼,ACS 需要辨識 Dynamics 365 部署,視自己為支援發行者。其他資訊:設定 Azure 與 Microsoft Dynamics CRM 2015 整合

重要

若要開發 Microsoft Azure 平台的解決方案接聽程式,您必須安裝 1.7 或 1.8 版本的 Microsoft AzureSDK, 在您的開發電腦上。

從 CRM 到服務匯流排案例

現在讓我們來識別一個實作上述連線元件的案例。 做為先決條件,ACS 已設定辨識 Microsoft Dynamics 365 為支援的發行者和帶有規則的 Microsoft Azure 服務匯流排 已設定解決方案,讓 Microsoft Dynamics 365 來張貼至接聽程式所在的端點。

下圖顯示構成這個案例的實際元素。

從 Microsoft Dynamics CRM 至服務匯流排案例

事件順序標示為識別如下圖:

  1. 接聽程式在 Microsoft Azure 服務匯流排 解決方案端點註冊並有效地接聽服務匯流排的 Microsoft Dynamics 365 遠端執行內容。

  2. 使用者在 Microsoft Dynamics 365 作業執行觸發註冊的 OOB 外掛程式或自訂 Azure 感知外掛程式執行特定作業。 外掛程式透過非同步服務系統作業,啟動目前請求內容的文章,至服務匯流排。

  3. ACS 驗證 Microsoft Dynamics 365張貼的宣告。 服務匯流排隨後便中繼遠端執行內容至接聽程式。 接聽程式處理內容資訊,並執行具備該資訊的特定業務相關工作。 服務匯流排通知非同步服務已成功張貼文章,並設定相關系統作業為完成狀態。

在 CRM 與 Azure 解決方案間建立合約

對於每個解決方案端點,您會設定定義服務匯流排上的遠端執行內容「訊息」程序處理,和應該用於該端點上的安全性。 在端點 (使用列於此處的支援合約),會收到服務匯流排的訊息:

  • 待辦項目
    佇列合約提供雲端的訊息佇列。 具備佇列合約,接聽程式不需要主動地接聽端點上的訊息。 對於佇列,有一種破壞式的讀取,以及非破壞式的讀取。 破壞式的讀取會從佇列中讀取可使用的訊息,並移除訊息。 非破壞式的讀取不會移除佇列中的訊息。

    Microsoft Dynamics 365支援兩種佇列:訊息緩衝佇列以及持續性佇列。 訊息緩衝佇列,若未在預先設定的時間長度內閱讀此資訊,則此佇列中的訊息會自動刪除,一般來說是十分鐘。 持續性佇列的可用時間更長,可以在程式碼中指定時間。

  • 單向
    單向合約需要主動的接聽程式。 如果端點上沒有使用中接聽程式,則 Microsoft Dynamics 365 張貼至服務匯流排會失敗。Microsoft Dynamics 365 在下次重試時間會以倍增方式拉長,直到張貼要求的非同步系統作業最後中止,且狀態設定為「失敗」為止。

  • 雙向
    雙向合約類似單向合約,不過字串值可以從接聽程式傳至 Microsoft Dynamics 365。

  • REST
    REST 合約類似 REST 端點的雙向合約。

  • 主題
    它類似佇列,但可以訂閱一個或多個接聽程式可以訂閱主題並從其主題接收訊息。

重要

若要使用這些合約,必須使用 Microsoft AzureSDK v1.7 或 1.8 撰寫您的接聽應用程式。

訊息緩衝區佇列已被取代,在 Microsoft Dynamics CRM SDK 未來版本中不支援。

為識別此種安全性,合約使用是合約組態的一部分。 合約可以使用傳輸安全性,使用 安全通訊端層 (SSL) (https)。

宣告驗證用於服務匯流排的安全存取。 用於驗證至服務匯流排的宣告在 Microsoft Dynamics 365 中產生,而且由指定於 Microsoft Dynamics 365 設定資料庫中的 AppFabricIssuer 憑證簽署。

執行階段錯誤之管理

如果在文章嘗試傳至服務匯流排且發生錯誤後,請確認 Microsoft Dynamics 365 Web 應用程式相關系統作業的狀態,獲取更多關於錯誤的詳細資訊。 如果服務匯流排離線或接聽程式/端點無法使用,則在 Microsoft Dynamics 365 處理的目前訊息不會張貼至匯流排。 非同步服務會繼續嘗試用定時的模式張貼訊息,起初會經常張貼,然後間隔會越來越長。 對於內部 Microsoft Dynamics 365 錯誤,將不會嘗試訊息文章。 針對外部服務匯流排或網路錯誤,相關系統作業就會進入「等候」狀態。

另請參閱

Microsoft Dynamics CRM 2015 Azure 擴充功能
設定 Azure 與 Microsoft Dynamics CRM 2015 整合
撰寫可擴充商務程序的外掛程式
Microsoft Dynamics CRM 的非同步服務 2015
AsyncOperation (系統作業) 實體

© 2017 Microsoft. 著作權所有,並保留一切權利。 著作權