Я не хочу беспокоиться о 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", "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
его функциональность JMX остается доступной с везде , а не только с перечисленные несколько IP-адресов.
Как это сделать правильно? Спасибо!