fteObfuscate (加密敏感数据)

fteObfuscate 命令用于加密凭证文件中的敏感数据。 这可以防止任何获得文件访问权的人读取敏感数据。

用途

可以对凭证文件中的用户名和密码属性进行加密。 这些属性将变换为带有 Cipher 后缀的新相关属性。 例如:
<!--
  MQMFTCredentials properties before
-->
<tns:logger name="logger1" user="user1" password="passw0rd" />
<tns:file path="$HOME/trust.jks" password="passw0rd" />

<!--
  MQMFTCredentials properties after
-->
<tns:logger name="logger1" userCipher="e71vKCg2pf" passwordCipher="se71vKCg" />
<tns:file path="$HOME/trust.jks" passwordCipher="e71vKCg2pf" />

<!--
  ProtocolBridgeCredentials Properties before
-->
<tns:user name="Fred" serverUserId="fred" serverPassword="passw0rd" />

<!--
  ProtocolBridgeCredentials properties after
-->
<tns:user name="Fred" serverUserIdCipher="e51vVCg2pf" serverPasswordCipher="se51vBCg" />

<!--
  ConnectDirectCredentials properties before
-->
<tns:user name="fteuser" ignorecase="true" pattern="wildcard"
          cdUserId="cdUser" cdPassword="cdPassword" pnodeUserId="pnodeUser"
          pnodePassword="pnodePassword">
  <tns:snode name="snode1" pattern="wildcard" userId="snodeUser" password="snodePassword"/>
</tns:user>

<!--
  ConnectDirectCredentials properties after
-->
<tns:user name="fteuser" ignorecase="true" pattern="wildcard"
          cdUserIdCipher="e71vKCg2pf" cdPasswordCipher="se71vKCg"
          pnodeUserIdCipher="2f1vgCg6df" pnodePasswordCipher="e71vKCg2pf">
  <tns:snode name="snode1" pattern="wildcard" userIdCipher="e51vVCg2pf" passwordCipher="se51vBCg"/>
</tns:user>
首选格式为:
Managed File Transfer (MFT)

<tns:qmgr mqPasswordCipher="mqmftcred!1!kvAzYv/1aCMfSQ5igkFVmQ==!f4rX5KL7aFKHJl7Ln0X+OQ==" 
mqUserIdCipher="mqmftcred!1!w2PQGhQcyq1NwYzGItz0VA==!Q40i2rRSEMGwrx6gnRFe8g==" 
name="MFTQM" user="JOHNDOE"/>
ProtocolBridgeCredentials

<tns:agent name="agent3">                                        
  <tns:serverHost name="ftpsServer" 
                            keyStorePasswordCipher="mqmftcred!1!w2PQGhQcyq1NwYzGItz3VA==!Q40i2rRSEMGwrx6gnRFe8g==" 
trustStorePasswordCipher="mqmftcred!1!w2PQGhQcyq1NwYzGKtz0VA==!Q40i2rRSEMGwrx6gnRFe8g==">
   </tns:serverHost>
 </tns:agent>
ConnectDirectCredentials

<tns:agent name="CDAGENT01">
        <tns:pnode name="cdnode*" pattern="wildcard">
          <tns:user name="MUSR_.*"
            ignorecase="true"
            pattern="regex"
            cdUserIdCipher="mqmftcred!1!w2PQGhQcyq1NwYzGItz0VA==!Q40i2rRSEMGwrx6gnRFe8g=="/>            cdPasswordCipher=="!mqmftcred!1!w2PQGhQcyq1NwYzGItz0VA==!Q40i2rRSEMGwrx6gnRFe8g=="/>            pnodeUserIdipher="mqmftcred!1!w2PQGhQcyq1NwYzGItz0VA==!Q40i2rRSEMGwrx6gnRFe8g=="/>            pnodePasswordCipher="mqmftcred!1!w2PQGhQcyq1NwYzGItz0VA==!Q40i2rRSEMGwrx6gnRFe8g=="/>          <tns:snode name="cdnode2" pattern="wildcard" userId="sue" passwordCipher="!mqmftcred!1!w2PQGhQcyq1NwYzGItz0VA==!Q40i2rRSEMGwrx6gnRFe8g=="/>
          </tns:user>
        </tns:pnode>
      </tns:agent>

使用说明

加密密钥被称为初始密钥,用于加密凭证文件中的敏感数据。 您可以在运行 fteObfuscate 命令时提供一个包含初始密钥的文件。 在运行命令前创建初始密钥文件。 如果不提供初始密钥,则使用默认初始密钥。

要使用特定初始密钥加密凭证,请在 fteObfuscate 命令中使用 -sf 参数指定包含初始密钥的文件名。
警告:
所有 IBM® MQ 安装的默认初始密钥都是一样的。 为安全保护密码,请在加密密码时提供一个您所安装系统独有的初始密钥。

有关详细信息,请参阅 加密 MFT 中存储的凭据。

注意: 当文件(例如, MQMFTCredentials.xml file )使用初始密钥文件进行加密时,需要使用加密凭据文件中的信息的 MFT 命令将需要通过JVM属性来确定初始密钥文件的位置,如下所示:
  • [Linux] Linux®
    export BFG_JVM_PROPERTIES="-Dcom.ibm.wmqfte.cred.keyfile=..."
  • [Windows] Windows
    set BFG_JVM_PROPERTIES=-Dcom.ibm.wmqfte.cred.keyfile=...

Syntax

The syntax is as follows:

fteObfuscate

Read syntax diagramSkip visual syntax diagramfteObfuscate-f credentials_file_name -sp protection_mode-sfcredentials_key_file-ooutput_file_name-sm

必需参数

-f 凭据文件名
必需。 包含要加密的凭证的文件名。
[不推荐]注: 该参数取代 -credentialsFile 参数,后者已从 IBM MQ 9.2.0 弃用。

可选参数

-sp 保护方式
可选。 用于加密凭证的保护模式。 可指定以下值之一:
0
[不推荐]使用过时的凭证保护模式。
1
使用与 IBM MQ 9.2.0 兼容的更安全的凭证保护方法。
考虑将任何存储的凭证迁移到保护模式 2 提供的增强保护。
2
使用最新的凭证保护模式。 这种模式是最安全的凭证保护模式。
这是缺省值。
-sf 凭证密钥文件
可选。 包含凭证密钥的文件的名称。 如果省略此参数,那么该命令将使用缺省凭证密钥。 有关更多信息,请参阅 保护 IBM MQ 组件配置文件中的密码
-o 输出文件名称
可选。 用于输出受保护凭证的文件的名称。
[ MQ 9.4.4 2025 年 10 月]-sm
使用符合 FIPS 标准的加密库加密密码。
如果 -sp 参数设置为 0 ,则无法使用该参数。
IBM iz/OS® 上没有此参数。
-或 -h
可选。 显示命令语法。

示例: 保护方式 2 (缺省保护方式)

要使用默认初始密钥和最新保护模式加密 MQMFTCredentials.xml 文件中的凭证,请执行以下命令:
fteObfuscate -f /usr/home/MQMFTCredentials.xml
要使用 MQMFTCredentials.xml 文件中的初始密钥和最新保护模式加密 /var/mqmft/credKeyfile.key 文件中的凭证,请执行以下命令:
fteObfuscate -sf /var/mqmft/credKeyfile.key -f /usr/home/MQMFTCredentials.xml
要使用 MQMFTCredentials.xml 文件中的初始密钥和最新保护模式加密 /var/mqmft/credKeyfile.key 文件中的凭据,并将加密后的凭据输出到另一个文件,请执行以下命令:
fteObfuscate -sf /var/mqmft/credKeyfile.key -sp 2 
             -f /usr/home/MQMFTCredentials.xml -o /usr/home/enccred.xml
要使用 ProtocolBridgeCredentials.xml 文件中的初始密钥和最新保护模式加密 /var/mqmft/credKeyfile.key 文件中的凭证,请执行以下命令:
fteObfuscate -sf /var/mqmft/credKeyfile.key 
             -f /usr/home/ProtocolBridgeCredentials.xml

示例: 保护方式 1

要使用 /var/mqmft/credKeyfile.key 文件中的初始密钥和保护模式 1MQMFTCredentials.xml 文件中的凭证进行加密,请执行以下命令:
fteObfuscate -sf /var/mqmft/credKeyfile.key -sp 1 -f /usr/home/MQMFTCredentials.xml
要使用 /var/mqmft/credKeyfile.key 文件中的初始密钥和保护模式 1 加密 MQMFTCredentials.xml 文件中的凭据,并将加密后的凭据输出到另一个文件,请执行以下命令:
fteObfuscate -sf /var/mqmft/credKeyfile.key -sp 1 
             -f /usr/home/MQMFTCredentials.xml -o /usr/home/enccred.xml

示例: 保护方式 0

要使用过时的保护模式加密 MQMFTCredentials.xml 文件中的凭据,请执行以下命令:
fteObfuscate -f /usr/home/MQMFTCredentials.xml -sp 0
[z/OS]

使用数据集z/OS

要加密数据集中 TEST.CREDS(CREDS) 的凭据并将加密后的凭据输出到 XML 文件,请执行以下命令:
fteObfuscate  -f "//test.creds(creds)" -o enc.xml
使用数据集 TEST.CREDS(CREDS) 中的初始密钥对数据集 TEST.CREDS(KEY) 中的凭据进行加密,请执行以下命令:
/fteObfuscate -f "//test.creds(creds)" -sf "//test.creds(key)"

返回码

表 1. 返回代码名称和描述
返回码 描述
0 命令成功完成
1 命令未成功执行