共用方式為


外掛程式隔離、信任和統計資料

 

發行︰ 2017年1月

適用於: Dynamics 365 (online)、Dynamics 365 (on-premises)、Dynamics CRM 2016、Dynamics CRM Online

Microsoft Dynamics 365 (線上和內部部署)支援在獨立環境中執外掛程式和自訂工作流程活動。 這個也稱為 沙箱的獨立環境中、外掛程式或自訂活動可以利用 Microsoft Dynamics 365 SDK 的完整功能存取組織 Web 服務。 存取檔案系統、系統世界紀錄、某些網路通訊協定、登錄,以及更多沙箱會防止的存取。 不過,沙箱外掛程式及自訂活動會存取類似 Azure 雲端服務 的外部端點。

Microsoft Dynamics 365 收集執行階段的統計資料並監控沙箱中的外掛程式及自訂工作流程活動。 如果沙箱工作處理超過閾值 CPU、記憶體,或處理限制,或者無回應的程序,則平台將會消除此程序。 此時,在該工作程序中,執行中的外掛程式或自訂工作流程活動會發生例外。 不過,下次該外掛程式或自訂工作流程活動將會照常執行。 每個組織中都有一個工作程序,所以一個組織中的失敗不會影響其他組織。

總結來說,建議使用沙箱做為外掛程式的執行環境,因為安全更高,且會在執行階段中進行監控和回報統計數據,也支援所有 Microsoft Dynamics 365 部署。 此外,如果在沙箱中登錄,Microsoft Dynamics 365 (線上) 只會支援自訂工作流程活動。

信任

開發人員擁有在沙箱中註冊外掛程式的選擇,其稱為部分信任,或是在沙箱外處理的完全信任。 完全信任支援內部部屬與網路對向部署 Microsoft Dynamics 365 的部署。 對於 Microsoft Dynamics 365 (線上) 部署,外掛程式或工作流程活動必須在沙箱 (部分信任) 中登錄,如前段所述,沙箱是一個獨立的環境。

重要

使用 Microsoft Dynamics CRM 4.0 SDK 所開發的自訂工作流程活動和外掛程式並不支援在沙箱中或由 Microsoft Dynamics 365 (線上) 執行。

執行階段統計資料

Microsoft Dynamics 365 平台收集執行階段時在沙箱中執行的外掛程式及自訂工作流程的資料。 此資訊儲存在資料庫中,使用的是 PluginTypeStatistic 實體記錄。 紀錄會在沙箱內的自訂程式碼執行後的三十分鐘到一小時內填入。 請參閱 PluginTypeStatistic 屬性查看收集了哪些資訊。 您可以使用擷取訊息或方法擷取此資訊使用擷取訊息或方法。

Web 存取

在沙箱內的外掛程式及自訂工作流程活動可透過 HTTP 和 HTTPS 通訊協定來存取網路。 此功能提供支援存取常用的 Web 資源,像是社交網站、新聞摘要,Web 服務以及更多資源。 下列網路存取限制適用於此沙箱功能。

  • 僅允許 HTTP 和 HTTPS 通訊協定。

  • 不允許存取 localhost (loopback)。

  • 無法使用 IP 位址。 您必須使用需要 DNS 名稱解決方案的具名網址。

  • 支援匿名驗證和建議。 並不針對憑證或儲存憑證提示使用者登入。

這些預設 Web 存取限制,定義於執行 Microsoft.Crm.Sandbox.HostService.exe 伺服器登錄機碼中。 登錄機碼值可由系統管理員將根據企業和安全性需求變更。 伺服器的登錄機碼路徑會是:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM\SandboxWorkerOutboundUriPattern

這個機碼值是一個一般的運算式字串,可以定義網路存取限制。 預設值機碼是:

"^http[s]?://(?!((localhost[:/])|(\[.*\])|([0-9]+[:/])|(0x[0-9a-f]+[:/])|(((([0-9]+)|(0x[0-9A-F]+))\.){3}(([0-9]+)|(0x[0-9A-F]+))[:/]))).+";

藉由變更此登錄機碼值,您可以變更沙箱內外掛程式的網路存取。

System_CAPS_security 安全性 注意

沙箱處理服務角色預設為寄出呼叫。 如果您不想要允許從自訂程式碼 (外掛程式或自訂工作流程活動) 的寄送呼叫,您可以透過設定伺服器 (代管沙箱程序服務角色) 上的下列註冊機碼為 1 (DWORD)。 接下來,重新啟動 Microsoft Dynamics 365 沙箱處理服務。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM\SandboxWorkerDisableOutboundCalls

另請參閱

事件架構簡介
撰寫外掛程式
建立自訂工作流程活動
Microsoft Dynamics 365 Azure 擴充功能
PluginTypeStatistic 實體訊息和方法
範例:從沙箱化外掛程式存取 Web

Microsoft Dynamics 365

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