2017-09-05 64 views
0

我在访问第三方服务时遇到“访问被拒绝”异常。在mscorlib.dll中发生类型'System.ServiceModel.Security.SecurityAccessDeniedException'的异常,但未在用户代码中处理

下面是结合我使用(已经更改了名字到XXXX,YYYY和OOOO,因为我不想让他们)

<system.serviceModel> 
<bindings> 
    <customBinding> 
    <binding name="XXXXSyncBinding"> 
     <security defaultAlgorithmSuite="Default" authenticationMode="UserNameOverTransport" 
     requireDerivedKeys="true" securityHeaderLayout="Lax" includeTimestamp="false"> 
     <localClientSettings detectReplays="false" /> 
     <localServiceSettings detectReplays="false" /> 
     </security> 
     <textMessageEncoding messageVersion="Soap11" /> 
     <httpsTransport /> 
    </binding> 
    </customBinding> 
</bindings> 
<client> 
    <endpoint address="https://OOOO--tls.YYYY.com/cgi-bin/OOOO.cfg/services/soap" 
    binding="customBinding" bindingConfiguration="XXXXSyncBinding" 
    contract="XXXXService.XXXXSyncPort" name="XXXXSyncPort" /> 
</client> 

服务使用TLS 1.2和正在传递所述凭证在头如下

ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072; 

_client.ClientCredentials.UserName.UserName = “XYXYXXYXY”; _client.ClientCredentials.UserName.Password =“XYXYXXYXY & 123”;

但服务始终抛出异常

型“System.ServiceModel.Security.SecurityAccessDeniedException”的异常出现在mscorlib.dll,但在用户代码中的其他信息没有处理:拒绝访问

堆栈跟踪信息

服务器堆栈跟踪:

服务器堆栈跟踪: 在System.ServiceModel.Channels.ServiceChannel.ThrowIfFaultUnderstood(消息答复,MessageFault故障,字符串动作,MessageVersion版本,FaultConverter faultConverter) 在System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime操作,ProxyRpc & rpc) at System.ServiceModel.Channels.ServiceChannel.Call(String action,Boolean oneway,ProxyOperationRuntime operation,Object [] ins,Object [] outs,TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall ,ProxyOperationRuntime操作) at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

异常[0]时重新抛出: 在System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke在System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(即时聊天reqMsg,即时聊天retMsg) (MessageData & MSGDATA,的Int32类型) 在WhiteNowWI.WhiteNowService.WhiteNowSyncPort.RunAnalyticsReport(RunAnalyticsReportRequest请求) 在WhiteNowWI.WhiteNowService.WhiteNowSyncPortClient.WhiteNowWI.WhiteNowService.WhiteNowSyncPort.RunAnalyticsReport(RunAnalyticsReportRequest请求)在C:\ RahulRathoreWork \ PMGWorkSpace \ GIT \ WhiteNow \服务引用\ WhiteNowService \参考.cs:line 24711 at WhiteNowWI.WhiteNowService.WhiteNowSyncPortClient.RunAnalyticsReport(ClientInfoHeader ClientInfoHeader,AnalyticsReport AnalyticsReport,Int32 Limit,Int32 Start,String Delimiter,Boolean ReturnRawResult,Boolean DisableMTOM,Byte [] & FileData)位于C:\ XXXX \ XXX \ GIT \ XXX \ Service References \ X \ Reference.cs中:第24723行 位于WhiteNowWI.QueryReport.getData(String username,String password,Int32 report_ID ,字符串分隔符)

有人可以帮助我这个。这将是一个很大的帮助。 谢谢!

回答

0

已经解决了。第三方服务的密码已过期,我在向第三方服务提出支持请求后才知道这一点。

相关问题