Blu*_*lub 5 c# authentication ssl
这发生在sslStream.AuthenticateAsServer(serverCertificate,
true, SslProtocols.Default, true);
通话中.
我正在尝试进行客户端身份验证.我控制客户端和服务器,两者都是通过sslstream的c#.当我使用nodejs服务器时,它完美地工作.但由于某些原因,我无法让服务器端可靠地在c#中工作.显然,ssl身份验证需要等待客户端选择客户端证书,但显然这不是c#sslstream类的内置功能?我在调用之前已经尝试过这样做,但它仍然会立即出现错误:

我不介意IE中的安全问题.没关系.我关心的是,sslstream似乎根本不适用于这样一个基本的szenario.
wcf跟踪出错:
System.Net错误:0:[7928] AppDomain中的异常#13869071 :: UnhandledExceptionHandler - 身份验证失败,因为远程方已关闭传输流..在System.Net.Security.SslState.ValidateCreateContext(Boolean isServer,String targetHost,SslProtocols enabledSslProtocols,X509证书serverCertificate,X509CertificateCollection clientCertificates,布尔remoteCertRequired,布尔checkCertRevocationStatus,布尔checkCertName)在System.Net.Security.SslStream.AuthenticateAsServer(x509证书serverCertificate,布尔clientCertificateRequired,SslProtocols enabledSslProtocols,布尔checkCertificateRevocation)
添加以下代码帮助我克服了这个问题(我在 .NET 4.5.1 中运行该应用程序)。
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls11;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7831 次 |
| 最近记录: |