- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
有没有人设法将 CA 证书安装到 activemq 实例中?我一直在进行谷歌搜索并阅读 activemq 文档,但我没有找到任何关于如何在 activemq 中使用预先存在的 CA 证书的信息。
我假设我将它安装到 activemq keystore 中。那是对的吗?我将在客户端将其与 websockets 和 mqtt 一起使用。
此外,以防万一我的假设不正确,这就是我认为我需要使用当前 CA 证书的原因。1) 我有一个 Web 应用程序,我们的用户需要与服务器进行安全通信。所有 http 流量都是安全的。2) 所有现代网络浏览器都对 websockets 有同源策略。他们似乎也有禁止混合内容的政策。因此,因为我的 http 流量是安全的,所以我还必须使用安全的 websockets。 (我还必须在相同的 url 运行 activemq 服务器)
我宁愿不通过 http 传输 websocket 流量,因为那样我不得不担心除了 activemq 配置之外的 apache 配置——这只是另一个可能出错的地方。
此外,我不会通过 websocket 传输任何敏感信息,因此我可能会使其处于不安全状态,但首先,我的用户可能不会理解这一点,而且浏览器似乎也有禁止混合内容的政策.
有没有人经历过我正在经历的事情?有什么建议吗?
最佳答案
我最终得到了这个工作,但最终我决定使用 ws_tunnel 模块通过 apache 隧道我的 websockets 通信。
但要回答我上面的问题,基本上您要做的就是根据您的网络服务器 key 创建一个新的 java keystore ,然后用这个新的 keystore 替换 apachemq java keystore 。我从未能够将 key 成功导入现有的 keystore 。
例如,在我的ubuntu服务器上,我的 key 是:
SSLCertificateFile /etc/apache2/ssl/star_astracorp_com.crt
SSLCertificateKeyFile /etc/apache2/ssl/star_astracorp_com.key
SSLCertificateChainFile /etc/apache2/ssl/astracorp.com.intermediate.sha1.chcrt
然后我将 key 导出为 pkcs12:
openssl pkcs12 -export -in /etc/apache2/ssl/star_astracorp_com.crt -inkey /etc/apache2/ssl/star_astracorp_com.key -out server.p12 -name emsu1 -CAfile ca.crt -caname root
然后我将 pkcs12 导入到一个新的 java keystore 中:
keytool -importkeystore -deststorepass password -destkeypass password -destkeystore server.keystore -srckeystore /etc/apache2/ssl/server.p12 -srcstoretype PKCS12 -srcstorepass password -alias emsu1
然后,在我的 apachemq 目录中,我将旧的 broker.ks 移开并将 server.keystore 重命名为 kroker.ks 并重新启动 activemq。
我的一个服务器的 key 有 .pem 文件。这个过程仍然相似,但是我必须进入 OS X 的 keystore 实用程序才能获取 key 的密码。
openssl pkcs12 -export -in /etc/certificates/ems-dev.local.EDA65671FF2C9CE7DAA56E9AD8E4E5F3F2675C79.cert.pem -inkey /etc/certificates/ems-dev.local.EDA65671FF2C9CE7DAA56E9AD8E4E5F3F2675C79.key.pem -out server.p12 -name emsdev -CAfile ca.crt -caname root
然后系统会要求您提供 key - 从 key 实用程序中复制并粘贴它。
然后,创建新 keystore 的过程是相同的:
keytool -importkeystore -deststorepass password -destkeypass password -destkeystore server.keystore -srckeystore /etc/certificates/server.p12 -srcstoretype PKCS12 -srcstorepass password -alias emsdev
关于ssl - acivemq、安全 websockets、CA、安全和同源限制 - 如何安装 CA 证书?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33937235/
我的 coinbase 支付按钮不会显示。我从 coinbase 收到此错误消息: 拒绝显示' https://coinbase.com/transactions ' 在框架中,因为它将 'X-Fra
我有一个 Web 应用程序,它作为托管在单个父窗口中的多个 iframe 运行(基本上是修改后的 GWT)http://en.wikipedia.org/wiki/Google_Web_Toolkit
CORS 表示: A web application executes a cross-origin HTTP request when it requests a resource that has
假设我有一个 CPU 密集型 iframe。 它与父页面在同一个域中,因此不适用跨域,因此它共享父页面的事件循环。 是否可以为 iframe 提供一个单独的 JS 上下文(包括一个单独的事件循环),这
我是一名优秀的程序员,十分优秀!