5.8. 跟踪已验证用户的信息
要启用跟踪和记录消息的来源(例如,为了安全审核目的),您可以使用 _AMQ_VALIDATED_USER 消息键。
在 broker.xml 配置文件中,如果将 populate -validated-user 选项设为 true,代理将使用 _AMQ_VALIDATED_USER 键将验证的用户名称添加到消息中。对于 JMS 和 STOMP 客户端,此消息密钥映射到 JMSXUserID 密钥。
代理无法将验证的用户名添加到 AMQP JMS 客户端生成的消息中。在客户端发送后修改 AMQP 消息的属性会违反 AMQP 协议。
对于基于其 SSL 证书进行身份验证的用户,代理填充的已验证用户名为证书可辨识名称(DN)映射的名称。
在 broker.xml 配置文件中,如果启用了 security-enabled 并 填充-validated-user 为 true,代理会填充客户端提供的任何用户名(如果有)。auto -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。