使用 BizTalk WCF 服务发布向导发布 WCF 服务后,必须正确配置它们。 本主题介绍如何配置已发布的 WCF 服务。
注释
必须通过运行 BizTalk WCF 服务发布向导生成 BizTalk 项目并发布它们。 有关如何使用 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-BasicHttp 和 WCF-WSHttp 适配器的安全选项卡中的安全模式下拉列表中选择了传输或TransportWithMessageCredential,则必须在 IIS 中设置安全套接字层 (SSL)。 如果在 WCF-CustomIsolated 适配器的绑定信息中设置 传输 或 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\, and then open the Web.config 文件中创建了 WCF 服务的文件夹。
在记事本中 <,在 system.web> 元素中添加以下行:
<trust level="Full" originUrl="" />
注释
此设置是可选的,它使得托管已发布 WCF 服务的 ASP.NET 应用程序能够访问任何受操作系统安全性约束的资源。 这是在使用已发布的 WCF 服务在同一台计算机上安装和运行 Windows SharePoint Services 时 WCF 所需的信任级别。
在 Internet Explorer 的 “地址 ”框中,使用 http:// host[:p ort]/apppath/wcfservicename.svc 格式键入 WCF 服务的 URL,以测试已发布的 WCF 服务。 下表介绍了这些参数。
参数 价值 host[:port] 部署 WCF 服务的计算机的名称。 冒号和端口号可以遵循此服务器名称。 apppath 虚拟目录和 Web 应用程序路径的名称。 wcfservicename.svc WCF 服务 .svc 文件的名称。 若要防止无意中泄露潜在的敏感服务元数据,建议通过执行以下任务来禁用对生产环境的此行为:
在记事本中,在 BizTalk Server WCF 服务发布向导在 %SystemDrive%\InetPub\ 中创建 WCF 服务的文件夹中打开 Web.config。
在记事本中,将 <serviceMetadata> 元素中的 httpGetEnabled 属性设置为 false,如下所示:
<serviceMetadata httpGetEnabled="false" httpsGetEnabled="false" />
另请参阅
配置 WCF-BasicHttp 适配器配置 WCF-WSHttp 适配器配置 WCF-CustomIsolated 适配器如何在 Windows Server 2003 中配置 IIS 网站身份验证