C#SDK - ASP.NET Core 2.1 - 无法建立SSL连接

问题描述 投票:-1回答:1

C#SDK - ASP.NET Core 2.1 - 无法建立SSL连接

我试过了

ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };

它在.NET Framework中运行,但在ASP.NET Core中不运行。

我也试过了

ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;

但我没有在ASP.NET Core中取得成功

我想在asp.net核心中生成自我SSL

ssl asp.net-core splunk
1个回答
0
投票

在.NET核心中,您应该在HttpClient级别执行此操作,而不是使用ServicePointManager对象,例如

https://stackoverflow.com/a/44540071/1538039

我在这里回答了类似的问题 - https://stackoverflow.com/a/55358543/1538039

虽然您可以通过这种方式绕过验证,但如果您控制服务器,则不是正确的方法。您基本上是说'我已经以某种方式配置服务器,这意味着我的客户端无法建立信任,因为它不会隐含地信任证书链。为了解决这个问题,我将通过添加一些代码来接受所有错误

更好的解决方案是使用客户端可以信任的证书配置服务器,然后就可以了!

在本地工作的开发时,如果要使用自签名证书,则可以将其安装为根CA,并且事情应该按预期工作。

一旦你到了一个你无法控制客户的阶段,这显然不是你可以要求别人去做的事情。那么唯一要做的就是使用letsencrypt之类的东西来生成证书,使用客户端可以信任的证书正确配置服务器。

© www.soinside.com 2019 - 2024. All rights reserved.