在 JMX 调用中查找用户

Finding the user on a JMX call

我正在使用 MbeanServer 修改现有系统,该系统将 bean 注册到服务器以允许 JMX 查看数据等。为了访问 JMX 网页,需要登录并将其与SSO 系统不知何故,虽然我还没有发现在哪里。

出于审计目的,我想记录访问某些特定方法时登录系统的用户的名称。

在被调用的方法中是否有任何方法可以找出发出请求的用户的姓名?

简答:否!

详细说明一下:根据你的问题,我了解到你的申请基本上是这样的:

Browser -> WebPage -> Servlet -> MBeanProxy -> MBean -> ApplicationCode

MBeanProxy 和 MBean 本身之间的连接由 JVM 配置(com.sun.management.jmxremote JVM 参数)提供的凭据保护。而且您不一定需要 real MBeanProxy,您也可以直接调用远程 MBean。

但是无论如何,各自的 API 不带有用户名或类似的东西。

只能使用用户名记录对 WebPage/Servlet 的访问(其中 Servlet 也可以是 JSP)。