在企业级应用中,确保数据传输的安全性是非常重要的。本文将介绍如何在BizTalk Server2013R2和IIS 8.5环境中配置SSL和客户端证书认证。通过这些配置,可以确保只有持有有效证书的客户端才能访问服务,并且可以进一步限制只有特定的客户端证书才能访问。
将按照以下步骤进行配置:
使用Visual Studio将模式发布为WCF服务。启用元数据交换,并创建BizTalk接收位置。启用匿名访问并发布服务。在IIS中创建一个新的应用程序池,并更改应用程序池的身份以使用有访问BizTalk权限的账户。更改WCF服务的应用程序池,并启用接收位置以确保服务正常工作。
打开Internet Information Services Manager,点击左侧的服务器名称,然后双击服务器证书。在操作面板中点击创建自签名证书,提供详细信息,并点击确定。这样,服务器证书就准备好了,可以绑定到服务上。
在IIS中,点击服务发布的网站(以默认网站为例),点击操作面板中的绑定。在站点绑定弹出窗口中,选择https类型,并选择之前步骤中创建的证书。点击确定,然后在SSL设置中勾选“要求SSL”选项。
使用Internet Explorer通过HTTPS浏览服务。注意,使用机器的全名代替localhost,否则可能会遇到证书不匹配的错误。
在IIS中,点击服务/应用程序,双击SSL设置。在客户端证书下点击“要求”,并应用更改。确保启用了匿名认证。在BizTalk管理控制台中,更改WCF接收位置适配器设置的安全选项,将传输客户端凭据类型更改为“证书”。
首先创建一个根证书,然后创建一个由该根证书签名的客户端证书。使用Visual Studio命令提示符创建根证书,并将其安装在本地计算机的“受信任的根证书颁发机构”中。然后创建客户端证书,并将其导出并导入到客户端机器的当前用户个人存储中。
打开控制面板,程序和功能。点击“启用或关闭Windows功能”。在Windows功能弹出窗口中,导航到Internet信息服务,World Wide Web服务,安全性。确保已选中“IIS客户端证书映射认证”和“URL授权”功能。在IIS中,选择服务发布的网站,双击配置编辑器。在配置编辑器中,设置“启用”标志为True,并添加映射规则。
重启Web服务器,并使用不同的客户端证书调用服务。如果使用的不是之前映射的证书,将收到授权错误。