5.8. 从验证用户跟踪信息
要启用跟踪并记录消息的来源(例如,对于安全审核),您可以使用 _AMQ_VALIDATED_USER 消息键。
在 broker.xml 配置文件中,如果 populate-validated-user 选项被设置为 true,则代理将使用 _AMQ_VALIDATED_USER 密钥将验证用户的名称添加到消息中。对于 JMS 和 STOMP 客户端,此消息会映射到 JMSXUserID 密钥。
代理无法将验证的用户名添加到 AMQP JMS 客户端生成的消息中。在客户端发送了 AMQP 消息后,修改 AMQP 消息的属性违反了 AMQP 协议。
对于基于其/her SSL 证书验证的用户,由代理填充的验证用户名是证书的不同名称(DN)映射的名称。
在 broker.xml 配置文件中,如果启用 security-enabled 为 false 且 填充-validated-user 是 true,则代理会填充任何用户名(若有),则代理会填充客户端提供的任何用户名。默认情况下,populate-validated-user 选项为 false。
您可以将代理配置为拒绝没有用户名(即 JMSXUserID 密钥)在邮件中已经填充的消息。您可能会发现此选项对 AMQP 客户端很有用,因为代理无法为这些客户端发送的消息填充验证的用户名本身。
要将代理配置为拒绝客户端设定的 JMSXUserID,请在 broker.xml 配置文件中添加以下配置:
<reject-empty-validated-user>true</reject-empty-validated-user>
<reject-empty-validated-user>true</reject-empty-validated-user>
默认情况下,reject-empty-validated-user 设置为 false。