JMX RMI身份验证无效

时间:2013-11-13 19:20:40

标签: java authentication jmx jconsole

我已将Java应用程序配置为需要身份验证,但不是SSL

JVM args:

-Djavax.management.builder.initial= -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=localIpAddress 

management.properties:

com.sun.management.jmxremote.rmi.port=39998
com.sun.management.jmxremote.port=39999
com.sun.management.jmxremote.authenticate=true
com.sun.management.jmxremote.ssl=false

jmxremote.access

monitorRole readonly
dev readwrite
tester readwrite

jmxremote.password

monitorRole guest
dev dev
tester test

但是,我无需输入任何凭据即可访问此应用程序。

jconsole ipOfApplication:39998

我可以直接访问,没有任何密码提示。如何确保提示我登录?

注意:即使启用SSL,也会出现相同的行为。

1 个答案:

答案 0 :(得分:0)

您可以使用以下配置:

-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=6002
-Dcom.sun.management.jmxremote.rmi.port=6003
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false

并在您的FW上打开JMX流量的端口6002,6003。这将使您能够远程访问JMX服务器,而无需引入任何自定义RMI代理。