2011-07-13 102 views
1

在關於ActiveMQ和WebSockets的previous question之後,我想知道是否支持安全的WebSocket。ActiveMQ是否支持安全的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)的事實,這種連接實際上是不可能的。

謝謝。

回答

2

這時...

的ActiveMQ只支持WebSocket的WS://網址

Apollo 1.1 SNAPSHOT支持WS和WSS

For example:

<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"/> 
+0

我不知道阿波羅,看起來不錯! –

1

更新的回答:是的,截至5.7.0:http://activemq.apache.org/websockets.html

引用:

版本5.7.0引入了Secure Web Socket傳輸。配置它需要兩件事。首先,你需要配置一個新的傳輸連接器一樣,我們使用WSS URL前綴表示該協議的安全版本

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

注意。接下來,您需要爲此傳輸提供SSL上下文。您可以通過在代理配置中提供sslContext來執行此操作,方法與您對ssl或https傳輸的操作類似。

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

就是這樣,你的安全的WebSocket運輸準備就緒。