0

有没有人遇到过这个错误?当我在重定向到另一个站点然后重定向回来后发回经过表单身份验证的站点时,我得到了这个。我已经检查了 loadUserProfiles="true" 但这没有帮助。这是一个托管在 IISExpress 上的站点,通过也托管在 IISExpress 上的其他站点,使用 localhost 生成的 SSL 证书并通过主机标头进行区分。在这一点上,我对错误的来源一无所知。是 cookie 错误吗?FormsAuth cookie?这是 ASP.NET 4.0 站点,我在其中针对 Thinktecture Id 服务器进行身份验证。感谢任何反馈,以帮助我解决当前的问题。谢谢

“/”应用程序中的服务器错误。

数据无效。

说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:System.Security.Cryptography.CryptographicException:数据无效。

源错误:

在执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常起源和位置的信息。

堆栈跟踪:

[CryptographicException:数据无效。] System.Security.Cryptography.ProtectedData.Unprotect(Byte[] encryptedData, Byte[] optionalEntropy, DataProtectionScope 范围) +318 Microsoft.IdentityModel.Web.ProtectedDataCookieTransform.Decode(Byte[] 编码) +203

[InvalidOperationException:ID1073:尝试使用 ProtectedData API 解密 cookie 时发生 CryptographicException(有关详细信息,请参阅内部异常)。如果您使用的是 IIS 7.5,这可能是由于应用程序池上的 loadUserProfile 设置设置为 false。] Microsoft.IdentityModel.Web.ProtectedDataCookieTransform.Decode(Byte[] 编码) +319 Microsoft.IdentityModel.Tokens.SessionSecurityTokenHandler.ApplyTransforms(Byte[] cookie, Boolean outbound) +217 Microsoft.IdentityModel.Tokens.SessionSecurityTokenHandler.ReadToken(XmlReader reader , SecurityTokenResolver tokenResolver) +1951 Microsoft.IdentityModel.Tokens.SessionSecurityTokenHandler.ReadToken(Byte[] token, SecurityTokenResolver tokenResolver) +149 Microsoft.IdentityModel.Web.SessionAuthenticationModule。


版本信息:Microsoft .NET Framework 版本:4.0.30319;ASP.NET 版本:4.0.30319.18044

4

2 回答 2

3

如果您的应用程序池未设置为加载其用户配置文件,则此类加密错误很常见。加密系统需要访问用户的证书存储。

发生错误的确切时刻是您进行身份验证并且 sts 发回签名的 SAML 令牌时。

这意味着错误是微妙的。你不会每次都看到它,只有在一个确切的时刻。您甚至可能会因为网站正常运行而误以为错误消失了,但是一旦有人尝试登录,错误就会再次出现。

于 2013-09-05T21:54:09.567 回答
1

该问题仅在 IE9 中以调试模式运行时发生。过了一会儿,不知什么原因就消失了。:/

于 2013-09-05T21:05:54.183 回答