我们开发了一个WCF服务(在Windows Server 2012上运行)和客户端API,它们通过客户端证书身份验证相互连接。 他们运行起来很酷,我们对系统进行了压力测试。 我们尝试使用巨型数据加载系统,然后系统响应速度很慢。所以我们中断了这个过程并尝试清除DB。清理和重新索引数据库花了6个多小时。 之后,WCF服务停止响应!但是我们没有更改任何代码块! 因此,我认为错误不是由我们的代码引起的。
尝试连接服务时wcf客户端获取的错误消息在
下面System.ServiceModel.Security.MessageSecurityException:HTTP 请求被禁止使用客户端身份验证方案'Anonymous'。 ---> System.Net.WebException:远程服务器返回错误:(403)Forbidden。在System.Net.HttpWebRequest.GetResponse()处 System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelRequest.WaitForReply(时间跨度 超时)---内部异常堆栈跟踪结束---
服务器堆栈跟踪:at System.ServiceModel.Channels.HttpChannelUtilities.ValidateAuthentication(HttpWebRequest的 请求,HttpWebResponse响应,WebException responseException, HttpChannelFactory
1 factory) at System.ServiceModel.Channels.HttpChannelUtilities.ValidateRequestReplyResponse(HttpWebRequest request, HttpWebResponse response, HttpChannelFactory
1家工厂, WebException responseException,ChannelBinding channelBinding)at System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelRequest.WaitForReply(时间跨度 超时)at System.ServiceModel.Channels.RequestChannel.Request(消息消息, TimeSpan超时)at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(消息 消息,TimeSpan超时)at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway,ProxyOperationRuntime操作,Object [] ins, 对象[]出局,TimeSpan超时)at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall,ProxyOperationRuntime operation)at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(即时聊天 消息)
我发现了类似的unanswered question,这与我的问题非常接近。 (Requiring SSL with WCF causes "The HTTP request was forbidden with client authentication scheme 'Anonymous'" error?)
可能是什么问题?什么可以解决方案? 有什么想法吗?