AMS 的密钥库配置文件 (keystore.conf) 的结构

密钥库配置文件 (keystore.conf) 将 Advanced Message Security 指向相应密钥库的位置。

要点: 存储在密钥库中的信息对于使用 IBM® MQ发送的安全数据流至关重要。 安全性管理员在向这些文件分配文件许可权时必须特别注意。

配置文件类型

表 1. 每种配置文件类型所需的前缀
文件类型 前缀 用途 支持的环境
AMSCRED amscred. 与密码保护系统有关的参数 缺省环境
CMS cms. 在证书管理系统中识别证书 分布式平台上的 C 客户端和 MCA 截取(不包括 IBM i )使用 CMS 前缀来指定必要的 KeyStore 位置或证书,用于 AMS
PKCS#11 pkcs11. 加密令牌标准 分布式平台上的 C 客户端和 MCA 截取(不包括 IBM i )支持 PKCS#11 前缀,以提供 KeyStore 位置和 AMS JavaJMS 客户端的证书,在需要 PKCS#11-compliant 硬件或软件的环境中也可使用此前缀。 KeyStores
[IBM i]PEM pem. 存储加密密钥和证书的标准格式 IBM i 上的 C 客户端使用 PEM 前缀指定密钥存储位置或证书
JKS jks. Java KeyStore 存储加密密钥和证书的格式 JavaJMS 客户端可以使用 JKS 前缀指定 KeyStore 用于 AMS
JCEKS jceks. 更安全的 Java KeyStore, 支持更强的加密功能 JavaJMS 客户端可以使用 JCEKS 前缀来配置 AMS
[IBM MQ Advanced VUE][z/OS]JCERACFKS jceracfks. 用于 RACF 安全系统的特定密钥 KeyStore z/OS® z/OS 系统上的 JavaJMS 客户端使用此前缀指定 RACF KeyStore 为 AMS

密钥库结构示例

CMS
cms.keystore = /dir/keystore_file
cms.certificate = certificate_label
PKCS#11
pkcs11.library = dir\cryptoki.dll
pkcs11.certificate = certificatelabel
pkcs11.token = tokenlabel
pkcs11.token_pin = tokenpin
pkcs11.secondary_keystore = dir\signers 
pkcs11.encrypted = no
[IBM i]PEM
pem.private = /dir/keystore_file_private_key
pem.public = /dir/keystore_file_public_keys
pem.password = password 
pem.encrypted = no
Java JKS
jks.keystore = dir/Keystore
jks.certificate = certificate_label
jks.encrypted = no
jks.keystore_pass = password
jks.key_pass = password
Java JCEKS
jceks.keystore = dir/Keystore
jceks.certificate = certificate_label
jceks.encrypted = no
jceks.keystore_pass = password
jceks.key_pass = password
Java JCERACFKS
jceracfks.keystore = safkeyring://user/keyring
jceracfks.certificate = certificate_label
Java PKCS#11
pkcs11.library = dir\cryptoki.dll
pkcs11.certificate = certificatelabel
pkcs11.token = tokenlabel
pkcs11.token_pin = tokenpin
pkcs11.secondary_keystore = dir\signers 
pkcs11.secondary_keystore_pass = password
pkcs11.encrypted = no

参数

表 2. 每种配置文件类型所需的参数摘要
参数 必需 配置文件类型
Java (PKCS#11, JKS , JCEKS 和 JCERACFKS) [IBM i]PEM PKCS#11 CMS AMSCRED
keystore X X     X  
[IBM i]private X   [IBM i]X      
[IBM i]public X   [IBM i]X      
[IBM i]password X   [IBM i]X      
library X X   X    
certificate X X   X X  
token X X   X    
token_pin X X   X    
secondary_keystore X X   X    
secondary_keystore_password X X        
encrypted   X [IBM i]X X    
keystore_pass X X        
key_pass   X        
provider   X        
keyfile           X
[AIX, Linux, Windows][MQ 9.4.4 Oct 2025]fips   X   X X  
[AIX, Linux, Windows][MQ 9.4.4 Oct 2025]forceFipsOff         X  

请注意,您可以使用 # 符号添加注释。

配置文件参数定义如下:
keystore
仅 CMS 和 Java 配置。
CMS, JKS 和 JCEKS 配置的密钥库文件的路径。

[IBM MQ Advanced VUE][z/OS]用于配置 JCERACFKS 的 RACF keyring 的 URI。

重要说明:
  • 密钥库文件的路径不得包含文件扩展名。
  • [IBM MQ Advanced VUE][z/OS] RACF 钥匙圈的 URI 必须是这样的形式:
    safkeyring://user/keyring
    其中:
    • user 是拥有密钥环的用户标识
    • keyring 是密钥环名称。
[IBM i]private
仅限 PEM 配置。
包含 PEM 格式的专用密钥和证书的文件的文件名。
[IBM i]public
仅限 PEM 配置。
包含 PEM 格式的可信公用证书的文件的文件名。
[IBM i]password
仅限 PEM 配置。
用于解密加密专用密钥的密码。
您应该使用本机 AMS 密码保护工具来保护此字段; 请参阅 保护密码
library
仅 PKCS#11 。
PKCS#11 库的路径名。
certificate
仅 CMS, PKCS#11 和 Java 配置。
证书标签。
token
仅 PKCS#11 。
令牌标签。
token_pin
仅 PKCS#11 。
用于解锁令牌的 PIN。
仅适用于 Java 操作; 应使用 Java AMS 密码保护工具来保护此字段; 请参阅 保护密码
仅适用于本机操作; 应使用本机 AMS 密码保护工具来保护此字段; 请参阅 保护密码
secondary_keystore
仅 PKCS#11 。
不带 .kdb 扩展提供的 CMS 密钥库的路径名,其中包含存储在 PKCS #11 令牌上的证书所需的锚点证书 (根证书)。 辅助密钥库还可以包含信任链中的中间证书以及隐私安全策略中定义的接收方证书。 此 CMS 密钥库必须随附一个隐藏文件,该文件必须与辅助密钥库位于同一目录中。
对于 Java 环境,需要 JKS 密钥库,并且必须提供 secondary_keystore_password
secondary_keystore_password
Java PKCS#11 。
通过 secondary_keystore 属性提供的 JKS 密钥库的密码。 您应该使用 Java AMS 密码保护工具来保护此字段; 请参阅 保护密码
encrypted
Java 以及,从 IBM MQ 9.3.0、 PKCS#11 和 [IBM i]PEM 只是
密码的状态。
keystore_pass
仅限 Java 配置。
密钥库文件的密码。
仅适用于 Java 操作。 您应该使用 Java AMS 密码保护工具来保护此字段; 请参阅 保护密码
key_pass
仅限 Java 配置。
用户专用密钥的密码。
仅适用于 Java 操作; 应使用 Java AMS 密码保护工具来保护此字段; 请参阅 保护密码
keyfile
提供在保护或解密此配置文件中包含的密码时要使用的初始密钥的位置; 请参阅 保护密码
provider
仅限 Java 配置。
实现密钥库证书所需的加密算法的 Java 安全提供程序。
[AIX、Linux 和 Windows][ MQ 9.4.4 2025 年 10 月]fips
仅 CMS, PKCS#11 和 Java 配置。
启用并执行 FIPS 对加密操作的要求。 更多信息,请参阅 AMS 中的 FIPS 模式
[AIX、Linux 和 Windows][ MQ 9.4.4 2025 年 10 月]forceFipsOff
CMS 配置。
仅限 MCA 拦截模式。
阻止 fips 模式自动升级策略以满足 FIPS 要求。 更多信息,请参阅 AMS 中的 FIPS 模式
要点: 存储在密钥库中的信息对于使用 IBM MQ发送的安全数据流至关重要。 安全性管理员在向这些文件分配文件许可权时必须特别注意。

保护密码

您应该保护 keystore.conf 文件中包含的密码和其他敏感信息。 有关更多信息,请参阅runamscred

keystore.conf 文件的示例:
# Native AMS application configuration
cms.keystore = c:\Documents and Settings\Alice\AliceKeystore
cms.certificate = AliceCert

# Java AMS application configuration
jceks.keystore = c:/Documents and Settings/Alice/AliceKeystore
jceks.certificate = AliceCert
jceks.encrypted = no
jceks.keystore_pass = passw0rd
jceks.key_pass = passw0rd