如何通过 ssl 而不是用户/密码连接到 ActiveMQ Artemis 代理?

问题描述 投票:0回答:1

我通过 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;
    }

证书将被允许与项目放在文件夹中

java activemq activemq-artemis
1个回答
0
投票

ActiveMQ Artemis 支持带有 SSL 的 JMX 连接器,请参阅 jmx-ssl 示例。但是,JMX 连接仅通过用户/密码进行身份验证,您无法使用证书来验证 JMX 连接。

© www.soinside.com 2019 - 2024. All rights reserved.