5.9. 加密配置文件中的密码
默认情况下,AMQ Broker 将所有密码都以纯文本形式存储在配置文件中。务必使用正确的权限保护所有配置文件,以防止未经授权的访问。您还可以加密或 屏蔽 纯文本密码,以防止不需要的查看器读取它们。
5.9.1. 关于加密的密码
加密或 屏蔽 的密码是纯文本密码的加密版本。加密版本由 AMQ Broker 提供的 掩码
命令行实用程序生成。有关 掩码
工具的更多信息,请参阅命令行帮助文档:
$ <broker_instance_dir>/bin/artemis help mask
要屏蔽密码,请将其纯文本值替换为加密密码。屏蔽的密码必须使用标识符 ENC()
括起,以便在需要实际值时解密。
在以下示例中,配置文件 <broker_instance_dir>/etc/bootstrap.xml
包含用于 keyStorePassword 和
参数的屏蔽密码。
trustStorePassword
<web bind="https://localhost:8443" path="web" keyStorePassword="ENC(-342e71445830a32f95220e791dd51e82)" trustStorePassword="ENC(32f94e9a68c45d89d962ee7dc68cb9d1)"> <app url="activemq-branding" war="activemq-branding.war"/> </web>
您可以将屏蔽的密码与以下配置文件搭配使用:
- broker.xml
- bootstrap.xml
- management.xml
- artemis-users.properties
-
login.config(用于
LDAPLoginModule
)
配置文件位于 <broker_instance_dir>/etc
。
Artemis-users.properties
仅支持已散列化的屏蔽密码。在创建代理时创建用户时,arte mis-users.properties
默认包含散列化密码。默认 PropertiesLoginModule
不会解码 artemis-users.properties
文件中的密码,而是对输入进行哈希并比较两个哈希值以进行密码验证。将哈希密码更改为屏蔽的密码不允许访问 AMQ Broker 管理控制台。
broker.xml
、bootstrap.xml
、management.xml
和 login.config
支持被屏蔽但未哈希的密码。