.net 核心应用程序中的嵌套客户端绕过 ssl 证书错误
nest client Bypass ssl Certificate error in .netcore application
var uris = new[]
{
new Uri("https://10.8.173.179:9200"),
};
var connectionPool = new SniffingConnectionPool(uris);
var settings = new ConnectionConfiguration(connectionPool);
settings.BasicAuthentication("elastic", "password");
var lowlevelClient = new ElasticLowLevelClient(settings);
var health = lowlevelClient.Cluster.Health<StringResponse>();
下面:
System.Net.Http.HttpRequestException:无法建立SSL连接,见内部异常。 ---> System.Security.Authentication.AuthenticationException: 根据验证程序,远程证书无效。
看看working with certificates documentation。
如果您使用的是自签名证书,则可以在 ConnectionSettings.ServerCertificateValidationCallback(...)
上使用以下任一证书
CertificateValidations.AllowAll;
允许所有证书
CertificateValidations.AuthorityIsRoot(cert)
并将证书颁发机构 (CA) public 密钥传递给它,以验证服务器提供的证书是由 CA
[= 生成的29=]
CertificateValidations.AuthorityPartOfChain(cert)
并将证书传递给它。
var uris = new[]
{
new Uri("https://10.8.173.179:9200"),
};
var connectionPool = new SniffingConnectionPool(uris);
var settings = new ConnectionConfiguration(connectionPool);
settings.BasicAuthentication("elastic", "password");
var lowlevelClient = new ElasticLowLevelClient(settings);
var health = lowlevelClient.Cluster.Health<StringResponse>();
下面: System.Net.Http.HttpRequestException:无法建立SSL连接,见内部异常。 ---> System.Security.Authentication.AuthenticationException: 根据验证程序,远程证书无效。
看看working with certificates documentation。
如果您使用的是自签名证书,则可以在 ConnectionSettings.ServerCertificateValidationCallback(...)
CertificateValidations.AllowAll;
允许所有证书
[= 生成的29=]CertificateValidations.AuthorityIsRoot(cert)
并将证书颁发机构 (CA) public 密钥传递给它,以验证服务器提供的证书是由 CACertificateValidations.AuthorityPartOfChain(cert)
并将证书传递给它。