我通过 jmx 连接到代理。我使用用户/密码进行连接。现在您需要通过 ssl(证书)进行连接。如何以及在哪里附加证书以便通过 ssl 进行连接?我知道我需要配置 trustStore 和 keyStore,但我不明白如何选择我需要的证书并将其附上
我附上通过 jmx 用户/密码连接的代码:
public static MBeanServerConnection connectBroker(String brokerUrl, String login, String password) {
MBeanServerConnection mBeanServerConnection = null;
try {
Map<String, String[]> env = new HashMap();
String[] creds = {login, password};
env.put(JMXConnector.CREDENTIALS, creds);
JMXConnector connector = JMXConnectorFactory.connect(new JMXServiceURL("service:jmx:rmi:///jndi/rmi://" + brokerUrl + "/jmxrmi"), env);
mBeanServerConnection = connector.getMBeanServerConnection();
DialogsAlert.brokerJmxRmiConnectionSuccess.showAndWait();
LOGGER.log(Level.INFO,"success" + brokerUrl);
} catch (Exception e) {
LOGGER.log(Level.WARNING,"fail", e);
}
return mBeanServerConnection;
}
证书将被允许与项目放在文件夹中
ActiveMQ Artemis 支持带有 SSL 的 JMX 连接器,请参阅 jmx-ssl 示例。但是,JMX 连接仅通过用户/密码进行身份验证,您无法使用证书来验证 JMX 连接。