2013-04-05 29 views
18

ASP.NET MVCアプリケーションで自分のホームページを取得しようとすると、この例外が発生します。フェデレーション認証と「暗号化操作中にエラーが発生しました」

[CryptographicException:エラーは暗号 動作中に発生した。】
System.Web.Security.Cryptography.HomogenizingCryptoServiceWrapper.HomogenizeErrors(Func`2 FUNC、バイト[]入力)246
System.IdentityModel .Services.MachineKeyTransform.Decode( エンコード[]バイト)191
System.IdentityModel.Tokens.SessionSecurityTokenHandler.ApplyTransforms(バイト[] クッキー、ブールアウトバウンド)173
System.IdentityModel.Tokens.SessionSecurityTokenHandler.ReadToken( XmlRe ADER リーダー、SecurityTokenResolver tokenResolver)756
System.IdentityModel.Tokens.SessionSecurityTokenHandler.ReadToken(バイト[] トークン、SecurityTokenResolver tokenResolver)+100
System.IdentityModel.Services.SessionAuthenticationModule.ReadSessionTokenFromCookie(バイト[] sessionCookie) 1164
System.IdentityModel.Services.SessionAuthenticationModule.TryReadSessionTokenFromCookie(SessionSecurityToken & はsessionToken)287
System.IdentityModel.Services.SessionAuthenticationModule.OnAuthenticateRequest(オブジェクト 送信者のEventArgsのEventArgs)を231
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 80 System.Web.HttpApplication.ExecuteStep(IExecutionStepステップ、ブール& completedSynchronously)私は何かを理解して何から165

SessionAuthenticationModuleのクッキーに間違っています。クッキーをクリアすると(すでにここに記載されているようにFederated Authentication on Azure)、クッキーは機能します。私が望むのは、何が起こっているのか、例外をキャッチして問題を解決する方法を理解することです。

+0

どのようにCookieを発行しますか? –

+0

あなたのアプリはAzureにありますか? –

+0

@WiktorZychla:以前のビルドのもので、ブラウザにキャッシュされていました。 – Dave

答えて

16

クッキーには、発行時に、現在のマシンキーを使用して暗号化されたセキュリティトークンが含まれています。以前のビルドからのクッキーがサーバーに返されると、SAM(より正確にはトークンハンドラー)は、エラーを引き起こすmachineKeyの新しい値を使用してそれを復号しようとします。 エラーを軽減するために、関連する投稿(Federated Authentication on Azure)の私の答えをチェックしてください。 HTH

+0

私の問題のための迅速な修正、ありがとう! –

3

私は同じ問題に直面しました。 ブラウザのクッキーキャッシュデータのすべてをクリアしたところ、修正されました。

+0

それは動作しますが、問題は再び発生します。 –

+0

私の場合は、固定してからうまくいきます。 –

+0

さて、どうやって修正しましたか? –

関連する問題