簡體   English   中英

通過Ws-fed認證拋出的Xml錯誤

[英]Xml errors thrown via Ws-fed authentication

我看到我工作的基於WIF的依賴方應用程序的日志中出現以下錯誤,無法重新創建問題:

CData elements not valid at top level of an XML document. Line 1, position 3.
Stack Trace: at   System.Xml.XmlExceptionHelper.ThrowXmlException(XmlDictionaryReader reader, XmlException exception)
at System.Xml.XmlUTF8TextReader.Read()
at   System.Xml.XmlBaseReader.MoveToContent()
at Microsoft.IdentityModel.Protocols.WSFederation.WSFederationSerializer..ctor(XmlDictionaryReader reader)
at Microsoft.IdentityModel.Web.WSFederationAuthenticationModule.CreateSerializerForResultXml(String resultXml)
at Microsoft.IdentityModel.Web.WSFederationAuthenticationModule.GetXmlTokenFromMessage(SignInResponseMessage message)
at Microsoft.IdentityModel.Web.WSFederationAuthenticationModule.GetSecurityToken(SignInResponseMessage message)
at Microsoft.IdentityModel.Web.WSFederationAuthenticationModule.SignInWithResponseMessage(HttpRequest request)
at Microsoft.IdentityModel.Web.WSFederationAuthenticationModule.OnAuthenticateRequest(Object sender, EventArgs args)
at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) 

閱讀可能出現的問題這篇Technet文章讓我認為問題出在wresult參數中,該參數是從STS發回到RP的,但是我看不出它是如何被錯誤地發回去的,除非它被篡改並且似乎不太可能由於問題的數量。

如果有人能夠確認導致此類錯誤的原因以及可能發生的錯誤,我們將不勝感激。

這個錯誤可能發生在包含一些“html標簽”的xml的內容中(例如
,...)或某些特殊字符,如“”,“/”,......可能會破壞Xml架構。 您應該在將任何html內容添加到Xml之前對其進行編碼。

更新:也許您在web.config中配置WCF的綁定是transferMode = STREAMED。 只需刪除它。 至少對我來說這可能是個問題。

這件事發生在我身上。 將傳輸模式從Streamed更改為Buffered。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM