2011-06-14 16 views
15

Es posible pasar credenciales para el recurso supervisado a JConsole al iniciarlo a través de la línea de comandos. Tengo el comando así ahora.Credenciales de línea de comandos de 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 

¿Alguien sabe si eso es posible y dónde deben colocarse esas credenciales?

Gracias.

+2

Buena 2DH pregunta! – helios

Respuesta

1

No creo que haya una opción de acceso de línea de comando para hacer esto. Es un enfoque sensato ya que revelaría credenciales en la firma del proceso que podrían ser visibles para otros. No se puede especificar un archivo de contraseña utilizando la propiedad del sistema com.sun.management.jmxremote.password.file.

Estas opciones están documentadas here.

+3

No creo que las propiedades del sistema mencionadas sean también aplicaciones para el lado del cliente. Traté de pasar la opción -J-Dcom.sun.management.jmxremote.password.file con la ruta al mismo archivo que se usa en el servidor, pero no funcionó. – haridsv

0

Hasta donde yo sé, no se puede. De su ejemplo, parece que solo está intentando conectarse localmente a un proceso JMX. En ese caso, simplemente podría deshabilitar la autenticación en el proceso JMX (y asegurarse de que solo escucha JMX sobre el host local). Entonces no necesita pasar credenciales y funcionará con jconsole. Sin embargo, para una verdadera conexión remota (en la que definitivamente querrá la autenticación, entre otras cosas, como el cifrado), creo que debe probar uno de los muchos otros clientes de tipo jmx.

Cuestiones relacionadas