2011-07-13 2 views
1

Следуя previous question относительно ActiveMQ и WebSockets, я хотел бы знать, поддерживаются ли защищенные WebSockets.Поддерживает ли ActiveMQ безопасные веб-узлы?

Я не могу найти ничего о них на официальном сайте (OT: документация действительно плохо организована), и я попытался с помощью следующих разъемов транспорта без успеха:

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

Это мне кажется странным что такая связь действительно невозможна с учетом профессиональной цели ActiveMQ и того факта, что другая транспортная поддержка ssl (Eg stomp + ssl).

Спасибо.

ответ

2

В это время ...

ActiveMQ поддерживает только WebSocket WS: // URLs

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

Я не знал об Apollo, кажется здорово! –

1

Обновленный ответ: Да, по состоянию на 5.7.0: http://activemq.apache.org/websockets.html

Процитировано здесь:

Версия 5.7.0 представляет собой безопасный перенос веб-сокета. Чтобы настроить его, вам нужно две вещи. Во-первых, вам нужно настроить новый транспортный разъем, как этот

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

Обратите внимание, что мы используем префикс URL-адрес WSS для обозначения обеспеченную версию протокола. Затем вам необходимо предоставить SSL-контекст для этого транспорта. Вы можете сделать это, предоставив sslContext в конфигурации вашего брокера аналогично тому, как это делается для транспорта ssl или https.

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

Это, ваш безопасный WebSocket транспорт готов.

Смежные вопросы