1

上一个关于 ActiveMQ 和 WebSockets 的问题之后,我想知道是否支持安全 WebSockets。

我在官方网站上找不到任何关于它们的信息(OT:文档的组织非常糟糕),我尝试使用以下传输连接器但没有成功:

<transportConnector name="websocket" uri="wss://0.0.0.0:61614"/>
<transportConnector name="websocket" uri="ws+ssl://0.0.0.0:61614"/>

考虑到 ActiveMQ 的专业目标以及其他传输支持 ssl(例如 stomp+ssl)的事实,这样的连接对我来说似乎很奇怪。

谢谢。

4

2 回答 2

3

更新答案:是的,从 5.7.0 开始:http://activemq.apache.org/websockets.html

在此引用:

5.7.0 版引入了安全 Web 套接字传输。要配置它,您需要两件事。首先,您需要像这样配置一个新的传输连接器

<transportConnectors>
    <transportConnector name="secure_websocket" uri="wss://0.0.0.0:61614"/>
</transportConnectors>

请注意,我们使用 wss url 前缀来表示协议的安全版本。接下来,您需要为此传输提供 SSL 上下文。您可以通过在您的代理配置中提供 sslContext 来做到这一点,就像您为 ssl 或 https 传输所做的那样。

<sslContext>
    <sslContext keyStore="file:${activemq.conf}/broker.ks"
        keyStorePassword="password" trustStore="file:${activemq.conf}/broker.ts"
        trustStorePassword="password"
    />
</sslContext>

就是这样,您的安全 websocket 传输已准备就绪。

于 2015-02-09T16:02:51.037 回答
2

此时...

ActiveMQ 仅支持 websocket ws:// url

Apollo 1.1 SNAPSHOT同时支持 ws 和 wss

例如:

 <connector id="ws" bind="ws://0.0.0.0:61623" connection_limit="2000"/>
 <connector id="wss" bind="wss://0.0.0.0:61624" connection_limit="2000"/>
于 2012-02-09T21:09:23.750 回答