gpt4 book ai didi

.net - 基于声明的 wcf 服务出错 - 无法验证传入策略

转载 作者:行者123 更新时间:2023-12-03 04:38:26 24 4
gpt4 key购买 nike

我开发了基于声明的 WCF 服务和使用 WCF 服务的客户端应用程序。但它在运行客户端应用程序时抛出错误 - “无法验证传入策略。有关详细信息,请参阅事件日志”

这是事件日志详细信息:-

Incoming policy failed validation.  No valid claim elements were found in the policy XML.

Additional Information:
at System.Environment.get_StackTrace()
at Microsoft.InfoCards.Diagnostics.InfoCardTrace.BuildMessage(InfoCardBaseException ie)
at Microsoft.InfoCards.Diagnostics.InfoCardTrace.TraceAndLogException(Exception e)
at Microsoft.InfoCards.Diagnostics.InfoCardTrace.ThrowHelperError(Exception e)
at Microsoft.InfoCards.InfoCardPolicy.Validate()
at Microsoft.InfoCards.Request.PreProcessRequest()
at Microsoft.InfoCards.ClientUIRequest.PreProcessRequest()
at Microsoft.InfoCards.Request.DoProcessRequest(String& extendedMessage)
at Microsoft.InfoCards.RequestFactory.ProcessNewRequest(Int32 parentRequestHandle, IntPtr rpcHandle, IntPtr inArgs, IntPtr& outArgs)

我已经经历了很多与此相关的问题,但没有任何帮助我。

这是wcf服务端的配置:- ( Click here to view image )

enter image description here

这是客户端配置:- ( Click here to view image )

enter image description here

这是我尝试调用该服务的方式:-

enter image description here

谁能告诉我我在这里做错了什么。可能我没有将 STS 收到的 token 传递给 WCF 服务。或者可能是其他东西。

最佳答案

您需要关闭 ChannelFactory 中的 CardSpace:

_clientChannel = new ChannelFactory<IService>("WS2007FederationHttpBinding_IService");
_clientChannel.ConfigureChannelFactory();
_clientChannel.Credentials.SupportInteractive = false;

SupportInteractive 将关闭 CardSpace。

如果仍然出现错误,请使用 try catch block 包装对服务的调用以捕获异常。看看错误是什么。

另外,打开WCF跟踪以查看WCF端是否发生错误。要打开 WCF 跟踪: http://stack247.wordpress.com/2013/05/23/wcf-tracing-and-diagnostic/

关于.net - 基于声明的 wcf 服务出错 - 无法验证传入策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14453943/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com