カスタム STS ログイン アプリケーションを作成しましたが、ログイン/ログアウト機能は正常に機能していました。しかし、ユーザーとしてログインしてIISRESETを実行してからページをリロードすると、以下のエラーが吐き出されます。(しかし、予想通り、Cookieをクリアして再度ログインした後は正常に動作します:) )
STS アプリケーションの Apppool ユーザーは「A」であり、STS アプリケーションが展開されているサーバー マシンに Windows でログインしたことはありません (管理者グループに属し、暗号化証明書にアクセスできます)。
サーバーに「A」として1回ログインしようとしました(Windowsログイン)。その後、突然この問題は解決しました。
IISRESET後に機能せず、Windowsが一度ログインした後に機能した理由を誰かが教えてもらえますか?
「/」アプリケーションでサーバー エラーが発生しました。
指定された状態でのキーの使用は無効です。
[CryptographicException: 指定された状態での使用に対してキーが無効です。]
System.Security.Cryptography.ProtectedData.Unprotect(Byte[] encryptedData, Byte[] optionalEntropy, DataProtectionScope scope)
Microsoft.IdentityModel.Web.ProtectedDataCookieTransform.Decode(Byte[] encoded)
[InvalidOperationException: 1D1073: A CryptographicException occurred when attempting to decrypt the cookie using the ProtectedData API (see inner exception for details).
Microsoft.IdentityModel.Web.ProtectedDataCookieTransform.Decode(Byte[] encoded) +433
Microsoft.IdentityModel .Tokens.SessionSecurityTokenHandler.ApplyTransforms(Byte] cookie, Boolean outbound) +189
Microsoft. IdentityModel .Tokens. SessionSecurityTokenHandler. ReadToken(XmlReader reader, SecurityTokenResolver tokenResolver) +894
Microsoft. IdentityModel .Tokens. SessionSecurityTokenHandler. ReadToken(Byte]] token, SecurityTokenResolver tokenResolver) +118
Microsoft.IdentityModel.Web.SessionAuthenticationModule.ReadSessionTokenrrocCookie(Byte] sessionCookie) +363
Microsoft.IdentityModel.Web. SessionAuthenticationModule.TryReadSessionTokenFroaCookie(SessionSecurityToken& sessionToken) +124
Microsoft. IdentityModel .Web. SessionAuthenticationModule.OnAuthenticateRequest(Object sender, EventArgs eventArgs) +61
System.Web.SyncEventExecutionstep.System.Web.HttpApplication.IExecutionStep.Execute() +80
System. Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +270
Version Information: Microsoft .NET Framework Version:4.D.30319; ASP NET Version:4.O.30319.272