我已将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,也会出现相同的行为。
答案 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代理。