无法校验计算机出示的证书,新计算机出现证书问题 - 提供给程序包的凭据无法识别...

我正在新机器上安装Windows服务.该服务通过TCP对SslStream执行各种操作,该操作使用问题中的证书.

该服务在其他2台Windows 2003计算机上使用相同的代码和相同的证书运行良好.但是,这台新机器也是带有64位处理器的Windows 2003.

当我尝试使用"服务帐户"身份运行服务时,我遇到了这个问题.它使用我自己的凭据工作正常.(同样,它在使用此服务帐户的其他2台计算机上运行正常)

导入证书时,我没有启用"强保护".

这是堆栈跟踪.

System.ComponentModel.Win32Exception:System.Net.Security.SecureChannel.AcquireCredentialsHandle上的System.Net.SSPIWrapper.AcquireCredentialsHandle(SSPIInterface SecModule,String package,CredentialUse intent,SecureCredential scc)无法识别提供给包的凭据(CredentialUse credUsage, SecureCredential&secureCredential)System.Net.Security.SecureChannel.AcquireClientCredentials(Byte []&thumbPrint)在System.Net.Security.SecureChannel.GenerateToken(Byte []输入,Int32偏移,Int32计数,字节[]和输出)在系统.Net.Security.SecureChannel.NextMessage(字节[]来电,的Int32偏移的Int32计数)

在System.Net.Security.SslState.StartSendBlob(字节[]来电,的Int32计数,AsyncProtocolRequest asyncRequest)

在System.Net.Security.SslState

System.Net.Securi上的System.Net.Security.SslState.StartReadFrame(Byte []缓冲区,Int32 readBytes,AsyncProtocolRequest asyncRequest)

中的.ProcessReceivedBlob(Byte []缓冲区,Int32计数,AsyncProtocolRequest asyncRequest)在System.Net.Security.SslState.StartSendBlob(Byte []传入,Int32计数,System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message,AsyncProtocolRequest asyncRequest)中的ty.SslState.StartReceiveBlob(Byte []缓冲区,AsyncProtocolRequest asyncRequest),

位于System.Net.Security.SslStream.AuthenticateAsClient的System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult lazyResult)的System.Net.Security.SslState.ForceAuthentication(Boolean receiveFirst,Byte [] buffer,AsyncProtocolRequest asyncRequest)

中的AsyncProtocolRequest asyncRequest( String targetHost,X509CertificateCollection clientCertificates,SslProtocols enabledSslProtocols,Boolean checkCertificateRevocation)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值