使用协议网桥代理的缺省凭证映射功能将 Managed File Transfer 中的用户凭证映射到文件服务器上的用户凭证。 Managed File Transfer 提供了一个 XML 文件,您可以编辑该文件以包含凭证信息。
关于本任务
ProtocolBridgeCredentials.xml 文件必须由用户手动创建。 缺省情况下,此文件的位置为启动协议网桥代理的用户的主目录,但它可以存储在代理可访问的文件系统上的任何位置。 要指定不同的位置,请在 "
ProtocolBridgeProperties.xml文件中添加<credentialsFile>元素。 例如
<tns:credentialsFile path="/example/path/to/ProtocolBridgeCredentials.xml"/>
在可以使用协议网桥代理之前,设置凭证映射,方法是:编辑该文件以包含主机、用户和凭证信息。 有关更多信息和样本,请参阅
协议网桥凭证文件格式。
![[z/OS]](ngzos.gif)
使用
IBM® WebSphere® MQ 7.5 或更低版本在
z/OS® 平台上创建
ProtocolBridgeCredentials.xml 文件时,必须先设置文件标记,然后才能编辑该文件。 运行以下命令以将文件标记为具有 ASCII 内容:
chtag -t -c ISO8859-1 ProtocolBridgeCredentials.xml
注: 在
z/OS上,可以将协议网桥凭证文件存储在数据集中,其中
.xml 文件的名称可以由用户指定。
过程
- 编辑行
<tns:server name="server name"> 以将 name 属性的值更改为 ProtocolBridgeProperties.xml 文件中的服务器名称。为 IBM WebSphere MQ File Transfer Edition 7.0.4 和更低版本创建的协议网桥代理没有 ProtocolBridgeProperties.xml 文件 (或相关用户出口) ,因此对于 IBM WebSphere MQ File Transfer Edition 7.0.4 Fix Pack 1 和更高版本,将自动为服务器名称分配服务器的主机名。 Therefore, if you use an updated ProtocolBridgeCredentials.xml file with <server> entries, a name corresponding to the server's host name will match.
您可以使用 pattern 属性来指定您已使用包含通配符或正则表达式的服务器名称。 例如
<tns:server name="serverA*" pattern="wildcard">
- 将用户标识和凭证信息作为
<tns:server>的子元素插入到文件中。您可以将以下某个或一些元素插入文件:
- 如果协议文件服务器为 FTP、FTPS 或 SFTP 服务器,那么您可以使用密码来对请求传输的用户进行认证。 将以下行插入到文件中:
<tns:user name="FTE User ID"
serverUserId="Server User ID"
serverPassword="Server Password">
</tns:user>
然后更改属性的值。
name 是 Java 正则表达式,用于匹配与 MFT 传输请求关联的 MQMD 用户标识
serverUserId 是作为登录用户标识传递给协议文件服务器的值。 如果未指定 serverUserId 属性,那么将改为使用与 MFT 传输请求相关联的 MQMD 用户标识
serverPassword 是与 serverUserId 相关联的密码。
name 属性可以包含 Java 正则表达式。 凭证映射器尝试将 MFT 传输请求的 MQMD 用户标识与此正则表达式匹配。 协议网桥代理尝试将 MQMD 用户标识与 <tns:user> 元素的 name 属性中的正则表达式匹配(按照这些元素在文件中的出现顺序)。 发现匹配后,协议网桥代理不会再寻找其他匹配。 如果发现匹配,那么会将相应的 serverUserId 和 serverPassword 值作为登录用户标识和密码传递到协议文件服务器中。 MQMD 用户标识匹配区分大小写。
- 如果协议文件服务器是 SFTP 服务器,那么您可以使用公用和专用密钥来对请求传输的用户进行认证。 将以下行插入文件中,并更改属性的值。 <tns:user> 元素包含一个或多个 <tns:privateKey> 元素。
<tns:user name="FTE User ID"
serverUserId="Server User ID"
hostKey="Host Key">
<tns:privateKey associationName="association"
keyPassword="Private key password">
Private key file text
</tns:privateKey>
</tns:user>
name 是 Java 正则表达式,用于匹配与 MFT 传输请求关联的 MQMD 用户标识
serverUserId 是作为登录用户标识传递给协议文件服务器的值。 如果未指定 serverUserId 属性,那么将改为使用与 MFT 传输请求相关联的 MQMD 用户标识
hostKey 是登录时服务器返回的预期密钥。
key 是 serverUserId 的专用密钥
keyPassword 是生成公用密钥的密钥的密码
associationName 是用于标记以便进行跟踪和记录的值。
name 属性可以包含 Java 正则表达式。 凭证映射器尝试将 MFT 传输请求的 MQMD 用户标识与此正则表达式匹配。 协议网桥代理尝试将 MQMD 用户标识与 <tns:user> 元素的 name 属性中的正则表达式匹配(按照这些元素在文件中的出现顺序)。 发现匹配后,协议网桥代理不会再寻找其他匹配。 如果找到匹配项,那么将使用相应的 serverUserId 和 key 值向协议文件服务器认证 MFT 用户。 MQMD 用户标识匹配区分大小写。有关将专用密钥与协议网桥代理配合使用的更多信息,请参阅 示例: 如何配置协议网桥代理以将专用密钥凭证与 UNIX SFTP 服务器配合使用。
注:将传输请求写入命令队列时,如果源代理命令队列位于 z/OS 或 IBM i 系统上,那么 MQMD 用户标识可能会转换为大写。 因此,根据传输请求中指定的源代理,相同发起方用户的 MQMD 用户标识以原来的大小写到达凭证出口或转换为大写。 缺省凭证映射出口会针对提供的 MQMD 用户标识执行区分大小写的匹配,您可能需要在映射文件中考虑到这一点。