Java 如何限制对JMX的访问仅限于某些IP地址?
我不想每次都麻烦SSL和密码,但仍然不希望局域网上的其他人可以访问我的程序的JMX功能 我填充了我的Java 如何限制对JMX的访问仅限于某些IP地址?,java,jmx,javapolicy,Java,Jmx,Javapolicy,我不想每次都麻烦SSL和密码,但仍然不希望局域网上的其他人可以访问我的程序的JMX功能 我填充了我的~/.java.policy,因此: grant principal javax.management.remote.JMXPrincipal "*" { permission java.net.SocketPermission "127.0.0.1", "accept"; permission java.net.SocketPermission "my.lan.ip.addr",
~/.java.policy
,因此:
grant principal javax.management.remote.JMXPrincipal "*" {
permission java.net.SocketPermission "127.0.0.1", "accept";
permission java.net.SocketPermission "my.lan.ip.addr", "accept";
permission java.net.SocketPermission "another.lan.ip.addr", "accept";
permission java.net.SocketPermission "*", "resolve";
}
不幸的是,这似乎没有效果——当程序以以下方式启动时:
-Djava.security.manager
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=1234