規劃發佈 Web 服務
BizTalk Server提供 Web 服務的內建支援。 它可讓您在協調流程內重複使用和匯總現有的 Web 服務。
概觀
您也可以發佈 (將協調流程公開) 為 Web 服務,以將 Web 服務邏輯與商業程式規則分開,這可讓您視需要更新或取代商務邏輯,而不需觸碰 Web 服務邏輯所使用的程式碼。 這項功能稱為實作「模組化程式碼」。一般而言,最好盡可能實作模組化程式碼。 發佈 Web 服務需要您啟用 Web 服務,並使用 BizTalk Web 服務發佈精靈將協調流程或架構發佈為 Web 服務。
BizTalk Server透過使用 SOAP 配接器,實作 Web 服務中原生介面卡的支援。 原生配接器支援提供 Web 服務的擴充性、容錯和追蹤功能,且無須撰寫任何程式碼。 如需 SOAP 配接器的詳細資訊,請參閱 SOAP 配接器。
規劃 Web 服務可以分成兩種類別:規劃發佈 Web 服務,以及規劃取用 Web 服務。 本主題描述發佈 Web 服務時應遵循的步驟。
啟用 Web 服務
若要發佈 Web 服務,您必須設定 Internet Information Services (IIS)、BizTalk 外掛式主控件,以及 Windows 使用者和群組帳戶。 本節提供啟用 Web 服務的概觀。 如需有關啟用 Web 服務的詳細資訊,請參閱 IIS 文件。
Internet Information Services
您可以將 Web 服務發佈至已使用 ASP.NET 設定 IIS 的 Windows 系統。 在 IIS 中,所有 Web 服務都會在 ASP.NET 背景工作進程內執行。
IIS 會使用應用程式集區來處理 Web 服務要求。 IIS 支援多個應用程式集區,而且每個應用程式集區進程可以在不同的使用者內容下執行。
BizTalk 外掛式主控件
若要啟用 Web 服務,您必須在 BizTalk Server 中建立至少一個隔離主機。 隔離主機代表外部進程,例如 ISAPI 延伸模組和 ASP.NET 程式,BizTalk Server不會建立或控制。 這些類型的外部處理序必須裝載特定配接器,例如 HTTP/S 和 SOAP。
BizTalk Server Configuration Manager會建立BizTalk Server做為預設隔離主機的 BizTalkServerIsolatedHost。 BizTalk 外掛式主控件使用者群組是與這個主控件相關的 Windows 群組預設名稱。 如需主機和主機實例的詳細資訊,請參閱 管理 BizTalk 主機和主機實例。
外掛式主控件執行個體只能執行一個配接器。 如果您使用單一外掛式主控件設定 HTTP 和 SOAP 配接器的接收處理常式,則必須建立兩個應用程式集區,讓每個配接器使用一個應用程式集區。
例如,如果您打算設定兩個隔離主機,如下所示:
隔離主機名稱 | 接收位置 |
---|---|
隔離主機 1 | HTTP_ReceiveLocation1A HTTP_ReceiveLocation1B SOAP_ReceiveLocation1注意:隔離主機 1用於接收 SOAP 和 HTTP 配接器的處理常式。 |
外掛式主控件 2 | HTTP_ReceiveLocation2 |
您可以為每個接收位置建立四個虛擬目錄,如下所示:
接收位置 | 虛擬目錄 |
---|---|
HTTP_ReceiveLocation1A | IIS_Virtual_Directory1A |
HTTP_ReceiveLocation1B | IIS_Virtual_Directory1B |
SOAP_ReceiveLocation1 | IIS_Virtual_Directory1C |
HTTP_ReceiveLocation2 | IIS_Virtual_Directory2 |
然後,您必須為虛擬目錄建立至少三個應用程式集區,如下所示:
注意
您必須至少為每一個外掛式主控件建立一個應用程式集區。
虛擬目錄 | 應用程式集區 | Description |
---|---|---|
IIS_Virtual_Directory1A IIS_Virtual_Directory1B |
AppPool_Host1_HTTP | 您不需要其他應用程式集區,因為所有接收位置都有相同的外掛式主控件 (外掛式主控件 1),和相同的通訊協定。 |
IIS_Virtual_Directory1C | AppPool_Host1_SOAP | 您不需要其他應用程式集區,因為接收位置使用的通訊協定 (SOAP) 與同一主控件 (外掛式主控件 1) 中其他接收位置不同。 |
IIS_Virtual_Directory2 | AppPool_Host2_HTTP | 您需要另一個應用程式集區,因為接收位置不是在外掛式主控件 1 下執行。 |
當您建立應用程式集區時,請記住下列重點:
您必須將應用程式集區的使用者帳戶新增至隔離主機的適當本機或網域群組。 請參閱BizTalk Server 中的 Windows 群組和使用者帳戶。
您必須根據上表,在外掛式主控件執行個體與對應的應用程式集區之間對應使用者帳戶。 如需隔離主機實例和應用程式集區使用者帳戶之間關聯性的詳細資訊,請參閱 如何變更服務帳戶和密碼。
單一伺服器安裝的資料庫存取
如果BizTalk Server和 BizTalk 管理資料庫位於同一部伺服器上,您應該將 ASP.NET 背景工作進程或 IIS 應用程式集區的使用者內容設定為本機 ASPNET 使用者帳戶,或設定為具有最低許可權的本機或網域使用者帳戶。
多部伺服器安裝的資料庫存取
如果BizTalk Server和 BizTalk 管理資料庫位於不同的伺服器上,您應該將 ASP.NET 背景工作進程或 IIS 應用程式集區的使用者內容變更為網域使用者帳戶。
實作多伺服器部署時,隔離主機 Windows 群組必須存在於 BizTalk 資料庫伺服器所屬的網域上。
將帳戶許可權和使用者權限降到最低
請使用外掛式主控件,將與 BizTalk Server 互動時所需最低限度資源的存取權限,賦予給在外部處理序中執行的配接器。 針對更安全的部署,您應該為外部進程提供最低許可權的使用者內容。
BizTalk Web 服務發佈精靈的安全性建議
BizTalk Web 服務發佈精靈建立的虛擬目錄將繼承父系虛擬目錄或網站的存取控制清單 (ACL) 和驗證需求。 如果父系虛擬目錄或網站允許匿名存取,則 BizTalk Web 服務發佈精靈將在建立虛擬目錄時移除該功能。
啟用已發佈 Web 服務的 ASP.NET 4.0
請參閱 如何針對已發佈的 Web 服務啟用 ASP.NET 4.0。
使用 BizTalk Web 服務發佈精靈
如需將協調流程發佈為 Web 服務的詳細資訊,請參閱 發佈協調流程即 Web 服務。
如需將架構發佈為 Web 服務的詳細資訊,請參閱 將架構發佈為 Web 服務。
規劃發佈 WCF 服務
BizTalk Server引進 Windows Communication Foundation (WCF) 的內建支援。 BizTalk Server可讓您在協調流程內重複使用和匯總所有現有的 WCF 服務。 BizTalk Server也會實作 WCF 服務中原生介面卡的支援。 原生配接器支援為 WCF 服務提供擴充性、容錯和追蹤功能,您無須撰寫任何程式碼。 如需 WCF 配接器的相關資訊,請參閱 WCF 配接器。
如需在 BizTalk Server 中規劃 WCF 服務的詳細資訊,請參閱發佈 WCF 服務。