如何在HornetQ中接受安全的websocket连接
问题描述:
我试图将HornetQ配置为接受用于STOMP通信的安全websocket连接(wss://)。我正在使用HornetQ 2.4.0.Final。我已经成功地配置像这样不安全的连接:如何在HornetQ中接受安全的websocket连接
<acceptor name="stomp-acceptor">
<factory-class>org.hornetq.core.remoting.impl.netty.NettyAcceptorFactory</factory-class>
<param key="protocols" value="STOMP"/>
<param key="host" value="localhost"/>
<param key="port" value="61613"/>
</acceptor>
我尝试添加ssl-enabled
,key-store-path
,和key-store-password
,以及用于将连接器适当trust-store-*
设置,如附带的HornetQ中示例ssl-enabled
证明但没有运气。
这可能吗?
答
我想通了。我会解释,尽管我的SSL术语可能有点弱。
提交的证书是自签名的。由于浏览器最初并不信任该证书,因此wss连接无提示失败。作为一种解决方法,我浏览了https://localhost:61613,并且浏览器通过典型安全警告&提示继续/确认安全异常。一旦完成,wss://连接已成功建立。这一策略适用于Chrome和Firefox。 (太糟糕了,没有人告诉你为什么连接失败,会节省很多时间。)
这个半相关的irc日志帮助;我不会想到尝试通过https://连接否则:http://irclogs.dankulp.com/logs/irclogger_log/activemq?date=2013-06-28,Fri&text=on
也很有帮助,现在回想起来:How to debug Safari silently failing to connect to a secure WebSocket