fteObfuscate(加密敏感数据)

fteObfuscate 命令用于加密凭证文件中的敏感数据。 这样,获取了对凭证文件的访问权的人员就无法读取该文件的内容。 从 IBM® MQ 9.2.0开始,该命令提供了更安全的凭证保护方法来改进加密。

用途

可以对凭证文件中的用户名和密码属性进行加密。 这些属性将变换为带有 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>
IBM MQ 9.2.0开始,首选格式为:
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>

Syntax

From IBM MQ 9.2.0, the syntax is as follows:

fteObfuscate

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

参数

-f 凭据文件名
必需。 将对其内容进行加密的凭证文件的名称。
[不推荐]注: 此参数将替换 IBM MQ 9.2.0中不推荐使用的 -credentialsFile 参数。
-sp 保护方式
可选。 要用于加密凭证的保护方式。 值可以是:
0
使用 IBM MQ 9.2.0上不推荐使用的凭证保护方法。
1
使用 IBM MQ 9.2.0中引入的更安全的凭证保护方法。 有关更多信息,请参阅 对 MFT 中存储的凭证进行加密
这是 IBM MQ 9.3.0之前的缺省值。
[MQ 9.3.0 2022 年 6 月]IBM MQ 9.3.0开始,您可以使用保护方式 1 以实现与 IBM MQ 9.3.0之前的版本的兼容性。 但是,请考虑将任何存储的密码迁移到通过将 保护方式 设置为 2提供的增强保护。
[MQ 9.3.0 2022 年 6 月]2
使用 IBM MQ 9.3.0上引入的增强型凭证保护方式。 有关更多信息,请参阅 对 MFT 中存储的凭证进行加密
这是 IBM MQ 9.3.0中的缺省值。
-sf 凭证密钥文件
可选。 包含凭证密钥的文件的名称。 如果省略此参数,那么该命令将使用缺省凭证密钥。 有关更多信息,请参阅 保护 IBM MQ 组件配置文件中的密码
-o 输出文件名称
可选。 用于输出受保护凭证的文件的名称。
-或-h
可选。 显示命令语法。
[MQ 9.3.0 2022 年 6 月]

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

要使用最新算法和固定密钥在 MQMFTCredentials.xml 文件中使用缺省保护方式 2 对凭证进行加密,并以增强格式存储这些凭证,请发出以下命令:
fteObfuscate -f /usr/home/MQMFTCredentials.xml
要使用最新算法和用户指定的密钥在 MQMFTCredentials.xml 文件中使用缺省保护方式 2 对凭证进行加密,并以增强的格式存储这些凭证,请发出以下命令:
fteObfuscate -sf /var/mqmft/credKeyfile.key -f /usr/home/MQMFTCredentials.xml
要使用最新算法和用户指定的密钥使用缺省保护方式 2MQMFTCredentials.xml 文件中的凭证进行加密,并将加密的凭证输出到另一个文件,请发出 fteObfuscate 命令:
fteObfuscate -sf /var/mqmft/credKeyfile.key -sp 2 
-f /usr/home/MQMFTCredentials.xml -o /usr/home/enccred.xml
要使用具有最新算法和用户指定密钥的缺省保护方式对 ProtocolBridgeCredentials.xml 文件中的凭证进行加密,并以增强格式存储这些凭证,请发出以下命令:
fteObfuscate -sf /var/mqmft/credKeyfile.key 
-f /usr/home/ProtocolBridgeCredentials.xml

示例: 保护方式 1

要使用最新算法和用户指定的密钥在 MQMFTCredentials.xml 文件中使用保护方式 1 对凭证进行加密,并以 IBM MQ 9.2.0中引入的更安全的格式进行存储,请发出以下命令:
fteObfuscate -sf /var/mqmft/credKeyfile.key -sp 1 -f /usr/home/MQMFTCredentials.xml
要使用最新算法和用户指定的密钥在 MQMFTCredentials.xml 文件中使用保护方式 1 对凭证进行加密,并将加密的凭证输出到另一个文件,请发出以下命令:
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® 上使用数据集

对数据集进行加密并将其输出为 XML 文件格式:
fteObfuscate  -f "//test.creds(creds)" -o enc.xml
使用数据集中指定的密钥对数据集进行加密:
/fteObfuscate -f "//test.creds(creds)" -sf "//test.creds(key)"

返回码

0
命令成功完成。
1
命令结束但未成功。