【问题标题】:RabbitMQ SSL Configuration: DotNet ClientRabbitMQ SSL 配置:DotNet 客户端
【发布时间】:2021-04-17 04:52:37
【问题描述】:

我正在尝试将(dotnet 客户端)连接到 RabbitMQ。我从 RabbitMQ 配置文件中启用了对等验证选项。

 _factory = new ConnectionFactory
                {
                    HostName = Endpoint,
                    UserName = Username,
                    Password = Password,
                    Port = 5671,
                    VirtualHost = "/",
                    AutomaticRecoveryEnabled = true                       
                };

sslOption = new SslOption
            {
                Version = SslProtocols.Tls12,
                Enabled = true,
                AcceptablePolicyErrors = System.Net.Security.SslPolicyErrors.RemoteCertificateChainErrors
                                         | System.Net.Security.SslPolicyErrors.RemoteCertificateNameMismatch,
                ServerName = "", // ?
                Certs = X509CertCollection
            }

以下是我通过“X509CertCollection”传递的客户认证详细信息。

CertSubject: CN=myhostname, O=MyOrganizationName, C=US // myhostname 是我的客户端主机的名称。

所以,如果我将“myhostname”值传递给 sslOption.ServerName,它就可以工作。如果我传递了一些垃圾值,它仍然有效。

根据 RabbitMQ 的文档,这两个值应该匹配,即 certCN 值和 serverName。这里 sslOption.ServerName 的值是什么?为什么?

【问题讨论】:

    标签: .net-core rabbitmq client-certificates x509certificate2


    【解决方案1】:

    我的坏。我找到了原因。发布,因为它可能会帮助某人。 原因:因为我设置了一个策略“System.Net.Security.SslPolicyErrors.RemoteCertificateNameMismatch”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-17
      • 1970-01-01
      • 2017-07-29
      • 2021-06-04
      • 2011-03-12
      • 2021-06-08
      相关资源
      最近更新 更多