Не удается подключиться к агенту JMX, настроенному с помощью пользовательского модуля входа в систему JAAS - PullRequest
0 голосов
/ 14 ноября 2018

Я пытаюсь подключиться к серверу JMX, он включен с помощью JAAS. Я написал свой собственный пользовательский модуль входа в систему, который должен вызываться при подключении внешнего клиента к JMX Server.

Ниже приведены свойства виртуальной машины, которые я установил при запуске сервера. (Конфигурация на стороне сервера)

-Djava.security.auth.login.config=
/opt/xyz/SYSTEMi/Systemi/Config/jaas.config
-Dcom.sun.management.login.config=XYZLogin

JAAS Config:-
XYZLogin {
  com.xyz.systemi.api.application.XYZLoginModule required;
};

I am getting this error when i try Connecting to JMX agent through a client.

 java.lang.SecurityException: Authentication failed! No LoginModules configured for /opt/xyz/SYSTEMi/Systemi/Config/jaas.config.

Я не могу продолжить, поскольку не вижу трассировки стека для такого рода исключений.

Фрагмент кода моего клиента:

target = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://"+ jmxHost + ":" + jmxPort + "/jmxrmi");
            Map<String, String[]> env = new HashMap<>();
            String jmxUser = prop.getProperty("jmxUser");
            String jmxPassword = prop.getProperty("jmxPassword");
            if (StringUtils.isNotEmpty(jmxUser) && StringUtils.isNotEmpty(jmxPassword)) {
                String[] credentials = {jmxUser, jmxPassword};
                env.put(JMXConnector.CREDENTIALS, credentials);
                connector = JMXConnectorFactory.connect(target,env);
            } else {
                connector = JMXConnectorFactory.connect(target);
            }
...