当前位置:  开发笔记 > 编程语言 > 正文

带有SSL的Java JMX客户端

如何解决《带有SSL的JavaJMX客户端》经验,为你挑选了1个好方法。

我使用本教程https://tomcat.apache.org/tomcat-7.0-doc/monitoring.html配置了Apache Tomcat 8,并生成了SSL证书.

JMXServiceURL url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://10.16.70.161:9999/jmxrmi");

            HashMap environment = new HashMap();
            String[] credentials = new String[]
            {
                "user", "passw"
            };
            environment.put(JMXConnector.CREDENTIALS, credentials);

            JMXConnector jmxc = JMXConnectorFactory.connect(url, environment);
            MBeanServerConnection server = jmxc.getMBeanServerConnection();

            Set s2 = server.queryNames(new ObjectName("Catalina:type=Server,*"), null);
            for (ObjectName obj : s2)
            {
                ObjectName objname = new ObjectName(obj.getCanonicalName());
                System.out.println("serverInfo " + server.getAttribute(objname, "serverInfo"));
                System.out.println("address " + server.getAttribute(objname, "address"));
                System.out.println("stateName " + server.getAttribute(objname, "stateName"));
            }

我如何扩展此JMX客户端以将其与SSL证书一起使用?我在互联网上找不到任何好的例子.



1> Val..:

您几乎就在那里,您的代码是正确的,只需使用keytool命令行实用程序将SSL证书添加到信任存储区后,使用以下命令行启动JMX客户端:

java -Djavax.net.ssl.trustStore=/your/path/to/truststore.jks \ 
  -Djavax.net.ssl.trustStorePassword=truststore_pwd \ 
  YourJMXClient

推荐阅读
可爱的天使keven_464
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有