Mar*_*wie 9 java ssl jmx jconsole tls1.2
很好的文档是如何配置默认JMX连接器来处理来自JMX客户端(如JConsole)的TLS/SSL安全连接,例如
-Dcom.sun.management.jmxremote.port=6789 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=true \
-Djavax.net.ssl.keyStore=/path/to/the/keystore.jks \
-Djavax.net.ssl.keyStorePassword=secr3t
Run Code Online (Sandbox Code Playgroud)
将JConsole与此连接器一起使用时,它会阻止警告"安全连接失败".不安全地重试?',一些用户发现令人吃惊(警告,而不是预防).
没有详细记录如何在构建a时以编程方式实现相同的目标JMXConnectorServer
,例如
JMXConnectorServerFactory.newJMXConnectorServer(url, env, mBeanServerFactory);
Run Code Online (Sandbox Code Playgroud)
有人能把我推荐给一个经过验证的例子吗 这同样适用于建立一个RMIRegistry
.我应该非常感激.
M.
Properties props = new Properties();
props.setProperty("com.sun.management.jmxremote.authenticate", "false");
props.setProperty("com.sun.management.jmxremote.ssl", "true");
props.setProperty("com.sun.management.jmxremote.registry.ssl", "true");
// Either set SSL properties via System.setProperty() or load an external config file
// props.setProperty("com.sun.management.jmxremote.ssl.config.file",
// "/path/to/ssl.properties");
System.setProperty("javax.net.ssl.keyStore", "/path/to/the/keystore.jks");
System.setProperty("javax.net.ssl.keyStorePassword", "secr3t");
JMXConnectorServer server = sun.management.jmxremote.ConnectorBootstrap
.startRemoteConnectorServer("6789", props);
Run Code Online (Sandbox Code Playgroud)
这是以编程方式启动支持 SSL 的 JMXConnectorServer 的最简单方法。它依赖于私有的 sun.management API。您也可以在没有私有 API 的情况下执行此操作,但您必须复制大量ConnectorBootstrap
逻辑。
归档时间: |
|
查看次数: |
466 次 |
最近记录: |