我有一个 .NET 客户端需要连接到 AWS 上的 ActiveMQ Artemis 实例。我能够通过 AMQP 连接到它们,而无需在位于 AWS 实例前面的负载均衡器上启用 SSL/TLS。但是我需要通过 AMQPS 启用 SSL/TSL 连接,我的研究表明我需要在我的客户端上创建和存储证书,除了 Artemis 服务器上的证书(这是为 SSL/TLS 连接提供的)。
这是链接 - http://activemq.apache.org/how-do-i-use-ssl.html
我试图了解是否有一种方法可以解决需要在客户端安装和管理证书的问题,因为这会给维护带来麻烦。在服务器上,我打算使用 AWS Certificate Manage 来进行证书管理,但在客户端上这会很不方便。对此的任何意见将不胜感激。
最佳答案
如果您的服务器端证书是由您的 JVM 信任的机构签署的,那么您不需要将证书导入到您的客户端信任库中。如果您使用的是自签名证书或由不受信任的机构签名的证书,那么您的客户端将需要在其信任库中的服务器证书。
各种支持平台(例如 Windows、Linux、AIX 等)商店的每个 JVM 版本(例如 8、9、10、11)和实现(例如 Oracle 与 OpenJDK 与 IBM)都可能存储它们的“cacerts"文件(即包含所有受信任的证书颁发机构的文件)在不同的地方,所以我不能确切地说你需要在哪里查看以确定你的 JVM 信任哪些特定的机构,但你应该能够在你的JVM 文档。
关于.net - 通过 AMQPS 连接到 ActiveMQ Artemis 的 AMQPNetLite 客户端是否需要客户端存储客户端证书?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56797902/