Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
BizTalk Server是微软构建业务流程和集成解决方案的首选服务器,BizTalk Server 2010是这个产品线的第7个主要版本,提供对Windows Server 2008 R2、SQL Server 2008 R2和Visual Studio 2010的全面支持和集成。
BizTalk Server 2010基于BizTalk Server 2009的核心架构,在应用到应用、业务到业务以及业务流程自动化等方面做了诸多重大改进,能让以前动辄以月和年为单位的设计和实现过程,现在只需要几周甚至几天就能完成。
随着信息技术的发展,尤其是云计算技术的日益普及,信息安全越来越成为产品关注的重点。BizTalk Server 2010在产品规划的过程中,也给信息安全设定很高的优先级。增加对FTPS(RFC4217规范)的适配器支持就是其中的一部分。本文将介绍基于安全连接的FTP适配器的配置过程。
一、配置证书
使用基于安全连接的FTP适配器之前,需要先设置FTPS服务,这就需要用到证书。导入证书的步骤为:
1. 打开Visual Studio的命令行提示工具(以管理员身份运行),执行以下命令以创建一个自签名的证书,并将此证书添加到本地计算机的个人证书列表中:
makecert -r -pe -n "CN=MachineName" -ss my -sr LocalMachine -sky exchange -a sha1 -len 2048 c:\ftptest.cer |
注意:请将“ MachineName ”替换成您当前的机器名。
2. 打开操作系统的“开始”菜单,在“运行”输入框中输入“mmc”命令打开控制台,选择“文件 > 添加或删除管理单元”菜单,以显示管理单元设置界面,将“证书”管理单元添加到当前控制台中。
注意: 当添加证书管理单元的时候,请在弹出的对话框中选择“计算机帐户”和“本地计算机”。
在本地计算机的个人证书目录下,您可以发现您刚创建的证书已经导入到系统中。但是这个证书当前并不受信任,因为它的颁发人(因为是自签名,所以发布人就是自己)并不在受信任的根证书列表中,所以我们还需要把证书添加到“受信任的根证书颁发机构”列表
3. 在管理控制台中,展开“证书(本地计算机) > 受信任的根证书颁发机构 > 证书”节点,右键点击“证书”节点,选择“所有任务 > 导入…”菜单,以弹出证书导入界面,如下图:
4. 在证书导入界面,选择导入刚创建的证书ftptest.cer的路径,点击OK按钮导入此证书。
二、配置FTPS服务
在IIS(Internet信息服务)管理器(我们在这里使用的是IIS 7.5)中配置FTPS服务的步骤为:
1. 打开IIS管理器,展开当前服务器节点,右键点击“网站”节点,选择“添加FTP站点…”菜单,弹出FTP服务配置向导。
2. 在FTP服务配置向导的“站点信息”页面,根据实际需求填写站点名称(比如FTPSTest)和物理路径(比如C:\inetpub\ftproot),点击“下一步”按钮。
3. 在“绑定和SSL设置”页面的SSL区域,选择“需要”,并从“SSL证书”下拉菜单中选择我们刚创建的证书),点击“下一步”按钮,如下图:
4. 在“身份验证和授权信息”页面,在“身份验证”区域勾选“基本”,在“授权”区域下拉菜单中选择“所有用户”,并且在“权限”中勾选“读取”和“写入”,如下图:
5. 点击“完成”按钮,创建FTPS站点,并保证其处于运行状态。
6. 在FTPS站点的根目录(比如C:\inetpub\ftproot)下创建两个文件夹“receive”和“send”,分别用于BizTalk Server的接收和发送端口。
三、配置BizTalk Server发送和接收端口
在BizTalk Server针对所配置的FTPS服务创建接收和发送端口的步骤为:
1. 打开BizTalk Server的控制管理台,展开所要操作的应用节点。
2. 右键点击“接收端口”节点,选择“新建 > 单向接收端口”,弹出接收端口属性配置界面。
3. 在接收端口属性配置界面,输入合适的端口名称(这里我们输入“ReceivePort1”),在左边选择、“接收位置”菜单,点击“新建”按钮,弹出接收位置配置界面。
4. 在接收位置配置界面,输入合适的接收位置名称(比如“Receive Location1”),传输类型选择“FTP”,接收处理程序选择任意合适的主机名称,接收管道选择“PassThruReceive”,最后点击“配置…”按钮以弹出FTP传输属性配置界面,如下图:
注意: 如果是在64位平台运行,所选择的主机需要以32位模式运行。
5. 在FTP传输属性配置界面,我们需要设置如下参数:
参数名称 |
取值 |
服务器 |
当前服务器名称(需要和创建证书时所用的“MachineName”相同) |
用户名 |
具有FTPS服务器receive和send目录读写权限的用户名 |
密码 |
登录用户的密码 |
文件夹 |
receive |
FTPS连接模式 |
显式 |
使用SSL |
是 |
如下图:
6. 点击“确定”按钮完成FTP传输属性配置。
7. 点击“确定”按钮以生成接收端口。
8. 在BizTalk Server的控制管理台,在所要操作的应用节点下面,右键点击“发送端口”节点,选择“新建 > 静态单向发送端口”,弹出发送端口属性配置界面。
9. 在发送端口属性配置界面,输入合适的端口名称(这里我们输入“SendPort1”),传输类型选择“FTP”,接收处理程序选择任意合适的主机名称,接收管道选择“PassThruTransmit”,最后点击“配置…”按钮以弹出FTP传输属性配置界面,如下图:
10. 在FTP传输属性配置界面,我们需要设置如下参数:
参数名称 |
取值 |
服务器 |
当前服务器名称(需要和创建证书时所用的“MachineName”相同) |
用户名 |
具有FTPS服务器receive和send目录读写权限的用户名 |
密码 |
登录用户的密码 |
文件夹 |
send |
FTPS连接模式 |
显式 |
使用SSL |
是 |
目标文件名 |
%MessageID%.xml |
11. 点击“确定”按钮完成FTP传输属性配置。
12. 在发送端口属性配置界面,点击左侧的“筛选器”菜单,在筛选器配置界面输入如下的筛选规则:
BTS.ReceivePortName == ReceivePort1 |
13. 点击“确定”按钮以生成发送端口。
14. 启动发送端口和接收位置。
四、验证
配置工作结束以后,我们就可以验证FTP适配器在安全连接环境下的工作情况:
1. 创建一个输入文件(比如input.txt),拷贝到接收位置目录中(在本示例中是C:\inetpub\ftproot\receive)。
2. 观察到BizTalk Server取得并删除此文件。
3. 转到发送端口目录(在本示例中是C:\inetpub\ftproot\send)。
4. 观察到一个新的文件(名字类似于{B77761A6-33FA-4F1F-AF0C-82D4D66B920C}.xml)产生。
如果得到以上结果,说明FTP适配器在安全连接环境中工作正常。试验成功!
在BizTalk Server 2010中,通过新的基于安全连接的FTP适配器,BizTalk Server和FTP服务器之间可以实现安全的交互,让用户不再为信息保密而担心。
另外,BizTalk Server 2010还对FTP适配器做了其他增强,包括只读文件位置支持和ASCII模式下的文件原子传输支持,限于篇幅,我们在这里就不一一介绍。关于其具体细节,大家可以参考BizTalk相关的在线文档,以及随机发布的帮助文档。
如果您想进一步了解BizTalk Server 2010的更多信息,请登录官方主页。作为BizTalk Server产品组的一员,我们非常鼓励大家试用这些新功能,并且提供您的反馈。您可以直接在此博客上发表意见,也可以加入我们的社区提出问题或者共享您的知识。
以下是我们的社区资源:
资源 |
链接 |
BizTalk社区门户(英文) |
|
BizTalk论坛(英文) |
https://social.msdn.microsoft.com/forums/en-US/category/biztalkserver/ |
BizTalk论坛(中文) |
https://social.microsoft.com/forums/zh-CN/biztalkserverzhchs/threads/ |
BizTalk开发人员社区(英文) |
|
BizTalk网播 |
肖文峰,软件测试开发工程师