如何用 BizTalk WCF 服務發佈精靈來設定已發佈 WCF 服務。
在使用 [BizTalk WCF 服務發佈精靈] 發佈 WCF 服務之後,您還必須適當設定這些服務。 本主題會說明如何設定已發佈的 WCF 服務。
注意
您必須先建置 BizTalk 專案,然後再執行 [BizTalk WCF 服務發佈精靈] 發佈它們。 如需如何使用 BizTalk WCF 服務發佈精靈的詳細資訊,請參閱 如何使用 BizTalk WCF 服務發佈精靈將協調流程發佈為 WCF 服務 ,以及 如何使用 BizTalk WCF 服務發佈精靈將架構發佈為 WCF 服務。
若要為已發佈 WCF 服務設定接收位置
執行 [BizTalk WCF 服務發佈精靈] 以發佈 BizTalk 專案。
如果您在建立 WCF 服務時未選取下圖中的 [ 建立 BizTalk 接收位置 ] 選項,請為已發佈的 WCF 服務建立新的接收埠和接收位置,然後選取接收位置將使用之傳輸類型的 WCF 配接器。 您必須在下圖所示的 [WCF 服務類型 ] 頁面上選取相同的 WCF 配接器。 如需建立接收位置的詳細資訊,請參閱 如何建立接收位置。
注意
[BizTalk WCF 服務發佈精靈] 會在已發佈 WCF 服務 (.svc 檔案) 之 Web 目錄的 \App_Data\Temp 資料夾中,建立繫結檔 BindingInfo.xml。 如果您選取 [ 建立 BizTalk 接收位置 ] 選項,精靈會使用系結檔案來建立接收位置。 您可以在 [BizTalk Server 管理] 主控台中手動匯入此繫結檔來建立接收位置。 如需匯入系結檔案的詳細資訊,請參閱 匯入系結。
如有必要,請開啟BizTalk Server管理主控台,如下所示:按一下 [開始]、指向 [程式]、指向[Microsoft BizTalk Server],然後按一下[BizTalk Server系統管理]。
在主控台樹中,依序展開 [BizTalk Server系統管理]、[BizTalk 群組]、[應用程式]、[應用程式] 和 [應放置產生的 WCF 服務的應用程式]、[接收位置],然後按兩下 WCF 服務的接收位置。
在 [ 接收位置屬性 ] 對話方塊中,按一下 [ 設定]。
如果接收位置裝載 WCF-BasicHttp 或 WCF-WSHttp 配接器,請在 [ 傳輸內容 ] 對話方塊中,按一下 [ 安全性 ] 索引標籤,然後在索引標籤上設定安全性屬性。如果接收位置裝載 WCF-CustomIsolated 配接器,請在 [ 傳輸屬性 ] 對話方塊中 按一下 [系 結] 索引標籤,然後在索引標籤上設定系結資訊。
的 [安全性] 索引標籤
注意
外掛式 WCF 配接器的傳輸用戶端認證類型屬性,必須符合裝載此接收位置之 Internet Information Services (IIS) 虛擬目錄的驗證配置。 例如,如果 屬性設定為Windows,您也必須為裝載此接收位置的虛擬目錄啟用整合式Windows 驗證。 同樣地,如果您將此屬性設為 [無],您必須允許針對裝載此接收位置的虛擬目錄進行匿名存取。 如需如何設定 WCF-BasicHttp 和 WCF-WSHttp 配接器的安全性屬性的詳細資訊,請參閱 WCF-BasicHttp 配接器,以及如何設定 WCF-WSHttp 接收位置。 如需如何設定系結資訊的詳細資訊,請參閱 如何設定 WCF-CustomIsolated 接收位置。
如果您在建立 WCF 服務時未選取 [ 建立 BizTalk 接收位置 ] 選項,請在 [ 傳輸內容 ] 對話方塊中,按一下 [ 一般] 索引標籤。在 [ 一般] 索引標籤上,于 [ 位址 ] 文字方塊中輸入此接收位置的 URI。 指定虛擬目錄加上 BizTalk WCF 服務發佈精靈在上一個程式中產生的 .svc 檔案名。 例如,輸入
/path/service.svc
。注意
Address屬性的開頭應該是正斜線 (「/」) ,並以 「.svc」 結尾。 Address屬性不得包含通訊協定配置、電腦名稱稱或埠號碼,例如http://host:port. 這個屬性只能使用虛擬目錄路徑。 WCF 服務標記檔案必須具有 .svc 副檔名。
的 [一般] 索引標籤
如果您在 WCF-WSHttp WCF-BasicHttp [安全性]索引標籤的 [安全性] 索引標籤上選取 [安全性模式] 下拉式清單中的[傳輸] 或 [TransportWithMessageCredential],則必須在 IIS 中設定安全通訊端層 (SSL) 。 如果您在 WCF-CustomIsolated 配接器的系結資訊中設定 Transport 或 TransportWithMessageCredential 安全性模式,您也必須在 IIS 中設定 SSL。
如果接收位置裝載 WCF-BasicHttp 或 WCF-WSHttp 配接器,請在 [ 傳輸屬性 ] 對話方塊中,視需要設定 [ 一般]、[ 系結] 和 [ 訊息] 索引標籤。 如果接收位置裝載 WCF-CustomIsolated 介面卡,請針對您的用途設定 [ 一般]、[ 行為]、[ 其他] 和 [ 訊息] 索引標籤。 針對 WCF-CustomIsolated 配接器,您可以從組態檔匯入[位址 (URI) ] 和 [端點識別] 屬性、系結[系結] 索引標籤上的系結資訊,以及此接收位置的 [行為] 索引標籤上的行為。
使用 [BizTalk Server 管理] 主控台來啟用已發佈 WCF 服務的接收位置。 如需如何啟用接收位置的詳細資訊,請參閱 如何啟用接收位置。
注意
接收位置在建立時是停用狀態。 因此在用 [BizTalk Server WCF 服務精靈] 建立接收位置之後,您必須啟用這些接收位置。
使用 [IIS 管理] 主控台,設定 IIS 應用程式集區來裝載已發佈 WCF 服務的接收位置。 如需如何為隔離 WCF 配接器設定應用程式集區的詳細資訊,請參閱 設定隔離 WCF 接收配接器的 IIS。
開啟命令提示字元,並移至 [BizTalk Server WCF 服務發佈精靈] 在 %SystemDrive%\InetPub\ 中建立 WCF 服務的資料夾,然後使用 [記事本] 來開啟 Web.config 檔案。
在 [記事本] 中,在system.web > 元素內 <新增下列程式程式碼:
<trust level="Full" originUrl="" />
注意
這項設定是選擇性的,而且它會將受限於作業系統安全性之任何資源的存取權授與主控已發佈之 WCF 服務的 ASP.NET 應用程式。 當您在同一部電腦上安裝和執行 Windows SharePoint Services 以及已發佈的 WCF 服務時,這就是 WCF 所需的信任層級。
在 Internet Explorer 的 [位址] 方塊中,使用 HTTP:// host[:p ort]/apppath/wcfservicename.svc格式輸入 WCF 服務的 URL,以測試已發佈的 WCF 服務。 下表將描述這些參數。
參數 值 host[:port] 您已部署 WCF 服務之電腦的名稱。 冒號和連接埠編號可以接在這個伺服器名稱後面。 apppath 虛擬目錄的名稱和 Web 應用程式路徑。 wcfservicename.svc WCF 服務 .svc 檔案的名稱。 為了避免不小心洩露可能含有機密的服務中繼資料,我們建議您透過執行下列工作,在實際執行環境中停用這種行為:
在 [記事本] 中開啟 Web.config,該檔案位於 [BizTalk Server WCF 服務發佈精靈] 在%SystemDrive%\InetPub\ 中建立 WCF 服務的資料夾中。
在 [記事本] 中,將serviceMetadata > 元素中的 <HTTPGetEnabled屬性設定為 false,如下所示:
<serviceMetadata httpGetEnabled="false" httpsGetEnabled="false" />
另請參閱
設定 WCF-BasicHttp 配接器Configuring the WCF-WSHttp Adapter Configuring the WCF-CustomIsolated AdapterHow To Configure IIS Web Site Authentication in Windows Server 2003