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
在.NET核心中,您应该在HttpClient级别执行此操作,而不是使用ServicePointManager对象,例如
https://stackoverflow.com/a/44540071/1538039
我在这里回答了类似的问题 - https://stackoverflow.com/a/55358543/1538039
虽然您可以通过这种方式绕过验证,但如果您控制服务器,则不是正确的方法。您基本上是说'我已经以某种方式配置服务器,这意味着我的客户端无法建立信任,因为它不会隐含地信任证书链。为了解决这个问题,我将通过添加一些代码来接受所有错误
更好的解决方案是使用客户端可以信任的证书配置服务器,然后就可以了!
在本地工作的开发时,如果要使用自签名证书,则可以将其安装为根CA,并且事情应该按预期工作。
一旦你到了一个你无法控制客户的阶段,这显然不是你可以要求别人去做的事情。那么唯一要做的就是使用letsencrypt之类的东西来生成证书,使用客户端可以信任的证书正确配置服务器。