一些背景信息:我正在开发一个网页,使用SOAP连接到一个Web服务。当我调用该Web服务的方法时,出现以下错误:
请求被中止:无法创建SSL/TLS安全信道。因此,我添加了以下代码行:
ServicePointManager.Expect100Continue = true;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;
我的服务器中存有他们的证书,并且他们也将我的证书存储并添加到白名单中以允许通过。但我在尝试进行身份验证时却收到了以下消息。
System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a receive. ---> System.ComponentModel.Win32Exception: The client and server cannot communicate, because they do not possess a common algorithm
我已经设置了Trace,这是Trace文件的样子。我遇到了一个问题,不确定下一步该怎么做。非常感谢您的帮助。
[Public Key]
Algorithm: RSA
Length: 2048
Key Blob: 30 82 01 0a 02 82 01 01 00 ce 08 11 55 52 0c 94 64 dc fe 1b e6 37 2e 1c 7a f1 3c 5d 24 67 d7 8e 76 58 78 64 30 d8 7d a3 e7 f2 0a c1 6b 33 91 7f 21 e6 a3 46 32 91 95 05 c6 46 05 43 ac 84 79 32 d5 ab 0f 0b 38 d1 9f 18 ab c3 82 dd 9d 98 ab 00 17 17 60 c0 c6 df 98 32 66 22 39 7b f5 fb e2 ed e2 a5 20 a7 48 0e 1b c6 43 2c 5b 81 85 69 2b 02 1e 40 77 9c 90 ea 25 81 f1 49 4d ed dd ....
ProcessId=3704
DateTime=2013-01-30T20:51:25.2747506Z
System.Net Information: 0 : [6072] SecureChannel#42430754 - Certificate is of type X509Certificate2 and contains the private key.
ProcessId=3704
DateTime=2013-01-30T20:51:25.2747506Z
System.Net Information: 0 : [6072] AcquireCredentialsHandle(package = Microsoft Unified Security Protocol Provider, intent = Outbound, scc = System.Net.SecureCredential)
ProcessId=3704
DateTime=2013-01-30T20:51:25.2747506Z
System.Net Error: 0 : [6072] AcquireCredentialsHandle() failed with error 0X80090331.
ProcessId=3704
DateTime=2013-01-30T20:51:25.2747506Z
System.Net Information: 0 : [6072] AcquireCredentialsHandle(package = Microsoft Unified Security Protocol Provider, intent = Outbound, scc = System.Net.SecureCredential)
ProcessId=3704
DateTime=2013-01-30T20:51:25.2747506Z
System.Net Error: 0 : [6072] AcquireCredentialsHandle() failed with error 0X80090331.
ProcessId=3704
DateTime=2013-01-30T20:51:25.2747506Z
System.Net.Sockets Verbose: 0 : [6072] Socket#14502061::Dispose()
ProcessId=3704
DateTime=2013-01-30T20:51:25.2747506Z
System.Net Error: 0 : [6072] Exception in the HttpWebRequest#11181865:: - The underlying connection was closed: An unexpected error occurred on a receive.
ProcessId=3704
DateTime=2013-01-30T20:51:25.2747506Z
System.Net Error: 0 : [6072] Exception in the HttpWebRequest#11181865::GetResponse - The underlying connection was closed: An unexpected error occurred on a receive.
ProcessId=3704
DateTime=2013-01-30T20:51:25.2747506Z
System.Net Information: 0 : [6072] Enumerating security packages:
ProcessId=3704
DateTime=2013-01-30T20:51:25.6335529Z
System.Net Information: 0 : [6072] Negotiate
ProcessId=3704
DateTime=2013-01-30T20:51:25.6335529Z
System.Net Information: 0 : [6072] NegoExtender
ProcessId=3704
DateTime=2013-01-30T20:51:25.6335529Z
System.Net Information: 0 : [6072] Kerberos
ProcessId=3704
DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] NTLM
ProcessId=3704
DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] Schannel
ProcessId=3704
DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] Microsoft Unified Security Protocol Provider
ProcessId=3704
DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] WDigest
ProcessId=3704
DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] TSSSP
ProcessId=3704
DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] pku2u
ProcessId=3704
DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] CREDSSP
ProcessId=3704
DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] AcquireDefaultCredential(package = Negotiate, intent = Outbound)
ProcessId=3704
DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] InitializeSecurityContext(credential = System.Net.SafeFreeCredential_SECURITY, context = (null), targetName = host/localhost, inFlags = MutualAuth, Confidentiality, Connection, AcceptIntegrity)
ProcessId=3704
DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] InitializeSecurityContext(In-Buffers count=0, Out-Buffer length=125, returned code=ContinueNeeded).
ProcessId=3704
DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] InitializeSecurityContext(credential = System.Net.SafeFreeCredential_SECURITY, context = 23570c30:235e9b58, targetName = host/localhost, inFlags = MutualAuth, Confidentiality, Connection, AcceptIntegrity)
ProcessId=3704
DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] InitializeSecurityContext(In-Buffers count=1, Out-Buffer length=121, returned code=ContinueNeeded).
ProcessId=3704
DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] InitializeSecurityContext(credential = System.Net.SafeFreeCredential_SECURITY, context = 23570c30:235e9b58, targetName = host/localhost, inFlags = MutualAuth, Confidentiality, Connection, AcceptIntegrity)
ProcessId=3704
DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] InitializeSecurityContext(In-Buffers count=1, Out-Buffer length=0, returned code=OK).
ProcessId=3704
DateTime=2013-01-30T20:51:25.6491530Z