配置文件适配器

如何配置文件适配器、读取安全建议和查看所需的权限。

可以使用 BizTalk Server 管理或以编程方式创建接收位置和发送端口。 本主题重点介绍 BizTalk Server 管理控制台。 有关编程步骤,请转到 创建接收位置或以编程方式发送端口

重要

从 BizTalk Server 2016 开始,可以使用文件适配器连接到 Azure 文件共享。 Azure 存储帐户必须装载在BizTalk Server上。 Windows 上的 Azure 文件存储入门 列出了装载步骤。

安全建议

文件适配器用于在 BizTalk Server 与相应的目录之间相互传递文件。 建议您遵循这些准则以确保您的环境中的文件适配器的安全并对其进行部署。

  • 不要打开端口以连接到外围网络中的文件共享。 应当在诸如 Intranet 等信任级别较高的环境中使用文件适配器。

  • 在接收位置的放置目录中 (DACL) 设置强自由访问控制列表。 例如,您必须设置对文件接收位置从其中提取消息的目录的读取、写入、删除文件和删除子文件夹及文件的权限。

  • 在使用文件适配器提取关键数据时,建议使用 Internet 协议安全性 (IPSec)。

所需的权限

适配器处理程序在为适配器处理程序选择的主机实例的安全上下文下运行。 主机实例使用 Logon BizTalk 管理中的 主机名 - 主机实例属性中的 属性 。 此 Logon 帐户必须对文件适配器使用的任何文件夹或共享具有特定权限。

处理程序使用的主机实例用户帐户需要以下权限。 表示✔需要权限。 空条目表示不需要权限。

权限 接收处理程序 发送处理程序
完全控制
如果访问文件共享) ,则 (
遍历文件夹/执行文件
在文件级别
列出文件夹/读取数据
在文件级别

在文件级别
读取属性
在文件级别
读取扩展的属性
在文件级别
创建文件/写入数据
在文件级别
创建文件夹/附加数据
在文件级别
删除子文件夹和文件
在文件级别

在文件级别
读取权限
在文件级别
更改
如果访问文件共享) ,则 (

提示

在文件级别,打开对文件或文件夹 的高级权限 以查看这些权限。

注意

每个主机只能与一个接收处理程序相关联。

配置接收位置

注意

在完成以下过程之前,必须已添加单向接收端口。 请参阅 如何创建接收端口

  1. 在BizTalk Server管理控制台中,依次展开“BizTalk Server管理”、“BizTalk 组”和“应用程序”,然后在要创建接收位置下展开该应用程序。

  2. 在左窗格中,单击“ 接收端口” 节点。 随后,在右窗格中右键单击与现有接收位置关联的接收端口或要与新接收位置关联的接收端口,然后单击“属性”

  3. 在“ 接收端口属性 ”对话框的左窗格中,选择“ 接收位置”,然后在右窗格中双击现有接收位置或单击“ 新建 ”以创建新的接收位置。

  4. 在“ 接收位置属性 ”对话框的“ 传输 ”部分,从下拉列表中选择“ 文件类型 ”,然后单击“ 配置 ”以配置接收位置的传输属性。

  5. 在“ 常规 ”选项卡中,执行以下操作:

    使用此选项 要执行此操作
    接收文件夹 必需。 输入文件系统、网络共享或 Azure 文件共享上文件夹的路径,文件接收处理程序在其中读取文件。 可以直接在 “接收文件夹 ”文本框中输入路径,或使用“ 浏览 ”按钮从文件系统中选择该路径。 浏览文件夹时,还可以使用“ 新建文件夹”创建新文件夹

    如果使用 Azure 文件存储共享,请输入 \\yourfilestoragename.file.core.windows.net\yourfilesharename

    类型: 字符串

    注意: 不要将 Receive 文件夹 属性设置为使用带符号链接的 NT 分布式文件系统的文件夹。 如果使用 NT 分布式文件系统,则只能在文件适配器接收位置中使用具有直接网络路径的文件夹。

    有关此属性的限制,请参阅 配置文件适配器时的限制

    注意: 发送端口或接收位置的 URI 不能超过 256 个字符。
    文件掩码 必需。 指定文件的掩码。 此掩码可以包含标准通配符值“*”。

    默认值: *.xml

    类型: 字符串

    有关此属性的限制,请参阅 配置文件适配器时的限制
    公共地址 指定此位置的公用地址。 BizTalk Server 向外部合作伙伴公开此地址。

    如果未指定此属性,则运行时引擎会将其替换为:

    file://<Receive 文件夹>/<文件掩码>

    此属性的值要求包含一个适配器前缀。

    类型: 字符串

    最小长度: 0

    最大长度:256
    重试计数 指定尝试访问网络共享上的接收位置(如果该位置暂时不可用)的次数。

    默认值: 5

    类型:

    最小值: 0

    最大值: MAX_LONG
    重试间隔(分钟) 指定两次尝试访问网络共享上的接收位置(如果该位置暂时不可用)之间的重试间隔时间(分钟)。

    默认值: 5 分钟

    类型:

    最小值: 0

    最大值: MAX_LONG
  6. 在“ 身份验证 ”选项卡上,执行以下操作:

    使用此选项 要执行此操作
    在主机无权访问网络共享位置时使用这些凭据 仅当使用网络共享或 Azure 文件共享时才需要。

    默认值:

    类型: 布尔
    用户名 如果使用网络共享,请输入有权访问该共享的用户名。

    如果使用 Azure 文件存储共享,请输入存储帐户的名称。

    类型: 字符串

    注意: 如果使用备用凭据配置了映射到同一网络共享的多个接收位置,则必须对所有接收位置使用相同的凭据。 如果试图使用多组凭据,Windows 将不允许建立从同一计算机到共享网络服务器的多个连接。
    密码 如果使用网络共享,请输入有权访问网络共享的帐户的密码。

    如果使用 Azure 文件存储共享,请输入存储帐户访问密钥;在Azure 门户中列出。

    类型: 字符串
  7. 在“ 批处理 ”选项卡中,执行以下操作:

    使用此选项 要执行此操作
    批中的消息数 指定可在一批中提交的最多消息数。

    默认值: 5

    类型: Int

    最小值: 1

    最大值: 256
    最大批大小(字节) 指定批的最大总字节数。

    默认值: 102400

    类型: Int

    最小值: 1024

    最大值: MAX_LONG

    文件适配器将批限制为最多消息数或最大允许字节数中首先达到的那个值。

  8. 选择“确定”。

  9. 在“ 接收位置属性 ”对话框中输入相应的值以完成接收位置的配置,然后单击“ 确定 ”保存设置。 有关“接收位置属性” 对话框的信息,请参阅 如何创建接收位置

配置发送端口

  1. 在BizTalk Server管理控制台中,创建新的发送端口或双击现有发送端口进行修改。 请参阅 如何创建发送端口。 配置所有发送端口选项,并为“常规”选项卡的“传输”部分中的“类型”选项指定 FILE

  2. 选择“类型”旁边的“配置”按钮。

  3. 在“ 常规 ”选项卡中,执行以下操作:

    使用此选项 要执行此操作
    目标位置 必需。 输入文件系统、公共共享或 Azure 文件共享上的位置的路径,以写入输出消息。 可以直接在 “目标位置”中输入路径,或使用“ 浏览 ”按钮从文件系统中选择它。 在“浏览文件夹”对话框中浏览 文件夹 时,还可以通过单击“新建文件夹”创建新 文件夹

    如果使用 Azure 文件存储共享,请输入 \\yourfilestoragename.file.core.windows.net\yourfilesharename

    类型: 字符串

    注意: 发送端口或接收位置的 URI 不能超过 256 个字符。
    文件名 指定文件发送处理程序将向其中写入消息的文件的名称。

    有关此属性的限制(包括在文件名中使用宏),请参阅 配置文件适配器时的限制
    复制模式 定义向文件写入消息时要使用的复制模式。 有效值为:

    Append。 文件发送处理程序打开一个文件(如果该文件存在)并在该文件末尾附加一个消息。 如果文件不存在,则文件发送处理程序将创建一个新文件。

    覆盖。 文件发送处理程序打开一个文件(如果该文件存在)并覆盖其内容。 如果文件不存在,则文件发送处理程序将创建一个新文件。

    新建。 如果文件不存在,则文件发送处理程序将创建一个新文件,并在该文件中写入消息。 如果该文件已存在,则文件发送处理程序将报告错误,然后按照发送端口的通用适配器重试逻辑操作。 此模式为文件发送处理程序的默认复制模式。
    允许写入时缓存 定义向文件中写入消息时是否使用文件系统缓存。

    有效选项是:

    请勿使用文件系统缓存。

    使用文件系统缓存。

    默认值: 错误 重要提示: 将此属性设置为 True 可以提高文件适配器的性能,在断电且并非所有数据都写入磁盘时,可能会丢失数据。
    写入时使用临时文件 定义是否先将输出文件写入到一个临时文件,然后在写入操作完成后重命名该文件。 如果启用此选项,则将使用扩展名 BTS-WIP 创建临时文件。

    有效选项为

    文件适配器在写入目标文件夹时创建一个临时文件。

    写入目标文件夹时,文件适配器不会创建临时文件。

    默认值:错误注意:仅当 CopyMode 属性设置为“新建”值时,此选项才可用
  4. 在“ 身份验证 ”选项卡上,执行以下操作:

    使用此选项 要执行此操作
    在主机无权访问网络共享位置时使用这些凭据 仅当使用网络共享或 Azure 文件共享时才需要。

    默认值:

    类型: 布尔
    用户名 如果使用网络共享,请输入有权访问该共享的用户名。

    如果使用 Azure 文件存储共享,请输入存储帐户的名称。

    类型: 字符串
    密码 如果使用网络共享,请输入有权访问网络共享的帐户的密码。

    如果使用 Azure 文件存储共享,请输入存储帐户访问密钥;在Azure 门户中列出。

    类型: 字符串
  5. 选择“确定”保存设置

设置动态发送端口的属性

动态发送端口在 BizTalk Server 管理控制台中不提供任何传输配置选项,因为这些属性将与消息关联的上下文属性一起提供。 这些属性可以在自定义管道或在业务流程中设置。 若要在业务流程中设置消息配置属性,可以执行以下操作:

  • 向业务流程添加 构造消息 形状。

  • 配置 “构造消息” 形状以构造新消息。 (例如,Message_2)

  • “消息分配” 形状添加到“ 构造消息” 形状。

  • 将代码添加到 “消息分配” 形状,以初始化构造的消息并为消息设置适当的配置属性。 以下代码初始化一个名为 Message_2 的消息,该消息是使用 构造消息 形状构造的,然后设置消息的两个配置属性。 在此方案中,Message_1 最初由业务流程接收:

    Message_2=Message_1;  
    Message_2(FILE.CopyMode)= 0; //0=Append  
    Message_2(FILE.AllowCacheOnWrite)= true;  
    Message_2(FILE.UseTempFileOnWrite)= true;  
    

配置接收或发送处理程序

  1. 在BizTalk Server管理控制台中,依次展开“BizTalk Server管理”、“BizTalk 组”、“平台设置”,然后单击“适配器”。

  2. 在扩展的适配器列表中,单击“ 文件”,在右窗格中,右键单击要配置的接收或发送处理程序。 选择“属性”。

  3. 在“ 主机名” 列表中,选择要运行处理程序的主机。

  4. 单击 “确定”

本节中的更多主题

以编程方式创建文件接收位置或发送端口

文件适配器属性架构和属性

配置文件适配器时的限制

另请参阅

用于接收服务器和发送服务器的端口
最低安全用户权限