Учетные данные командной строки JConsole - PullRequest
15 голосов
/ 14 июня 2011

Можно ли передать учетные данные для отслеживаемого ресурса в JConsole при запуске из командной строки.У меня есть такая команда прямо сейчас.

${jdk.home}/bin/jconsole.exe
    -J-Djava.class.path=${jdk.home}/lib/jconsole.jar;
        ${jdk.home}/lib/tools.jar;${weblogic.home}/server/lib/wljmxclient.jar
    -J-Djmx.remote.protocol.provider.pkgs=weblogic.management.remote
    service:jmx:iiop://127.0.0.1:7510/jndi/weblogic.management.mbeanservers.runtime

Кто-нибудь знает, возможно ли это и где следует разместить эти учетные данные?

Спасибо.

Ответы [ 3 ]

1 голос
/ 19 июля 2011

Я не думаю, что для этого есть опция доступа к командной строке. Это разумный подход, поскольку он позволяет выявить учетные данные в сигнатуре процесса, которые могут быть видны другим.

Однако вы можете указать файл паролей, используя системное свойство com.sun.management.jmxremote.password.file .

Эти параметры задокументированы здесь .

0 голосов
/ 28 мая 2014

Это невозможно с JConsole. Альтернативная консоль JMX, которая позволяет передавать имя пользователя / пароль из командной строки, - это jmxterm.

Его можно найти здесь: http://wiki.cyclopsgroup.org/jmxterm

0 голосов
/ 19 июня 2012

Насколько я знаю, ты не можешь. Из вашего примера видно, что вы пытаетесь подключиться только локально к процессу JMX. В этом случае вы можете просто отключить аутентификацию в процессе JMX (и убедиться, что он прослушивает JMX только через localhost). Тогда вам не нужно передавать учетные данные, и это будет работать с jconsole. Хотя для истинного удаленного соединения (в котором вам обязательно понадобится аутентификация, помимо прочего, например, шифрование), я думаю, вам нужно попробовать один из множества других клиентов типа jmx.

...