2017-12-18 13 views
0

2台のサーバーを持つWebファームでASP.NET MVC Core 1.1アプリケーションを実行していて、ユーザーがファイルをアップロードしようとしたときにこの例外が発生しました。取得要求があるサーバーからあり、その投稿が他のWebサーバーに送信されている可能性があり、キーが一致しないため、これが起こっていると考えていますか?エラー偽造防止トークンを復号化できませんでした。 key {guid}がキーリングに見つかりませんでした

この問題を回避する方法はありますか?

エラー1: 偽造防止トークンを復号化できませんでした。

Microsoft.AspNetCore.Antiforgery.Internal.DefaultAntiforgery.DeserializeTokensでMicrosoft.AspNetCore.Antiforgery.Internal.DefaultAntiforgeryTokenSerializer.Deserialize(文字列 serializedToken)で

(のHttpContext のHttpContext、AntiforgeryTokenSet antiforgeryTokenSet、 AntiforgeryToken & cookieToken、AntiforgeryToken Microsoft.AspNetCore.Antiforgery.Internal.DefaultAntiforgerでMicrosoft.AspNetCore.Antiforgery.Internal.DefaultAntiforgery.ValidateTokens(のHttpContext のHttpContext、antiforgeryTokenSet antiforgeryTokenSet)で& requestToken)例外がスローされた前の場所からのスタックトレースの末尾--- でSystem.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() でSystem.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification() System.Runtime.ExceptionServices.ExceptionDispatchInfoで Microsoft.AspNetCore.Mvc.ViewFeatures.Internal.ValidateAntiforgeryTokenAuthorizationFilter.d__3.MoveNextでタスク タスク)() ---例外がスローされた以前の位置からスタックトレースの終わり--- .Throw()at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(タスク タスク): Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.d__20.Mov eNext() ---例外がスローされた--- System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw(で) System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(タスク タスク)で、前の場所からスタックトレースの終わりMicrosoft.AspNetCore.Builder.RouterMiddleware.d__4.MoveNext() ---例外がスローされた前の場所からのスタックトレースの末尾--- でSystem.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()で System.Runtime .CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(タスク タスク) でMicrosoft.AspNetCore.HttpOverrides.HttpMethodOverrideMiddleware.d__4.MoveNext() ---前のlocatからのスタックトレースの終了イオンwhere exce

エラー2:偽造防止トークンを復号化できませんでした。 Microsoft.AspNetCore.Antiforgery.Internal.DefaultAntiforgery.DeserializeTokens(のHttpContext のHttpContext、AntiforgeryTokenSet antiforgeryTokenSet、 AntiforgeryToken & cookieToken、で Microsoft.AspNetCore.Antiforgery.Internal.DefaultAntiforgeryTokenSerializer.Deserialize(文字列 serializedToken)で

AntiforgeryToken & requestToken)at Microsoft.AspNetCore.Antiforgery.Internal.DefaultAntiforgery。例外が System.Runtimeで---スローされた以前の場所から Microsoft.AspNetCore.Antiforgery.Internal.DefaultAntiforgery.d__9.MoveNext() でValidateTokens(HttpContextを のHttpContext、AntiforgeryTokenSet antiforgeryTokenSet)---スタックトレースの終わり。 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotificationでExceptionServices.ExceptionDispatchInfo.Throw() Microsoft.AspNetCore.Mvc.ViewFeatures.Internal.ValidateAntiforgeryTokenAuthorizationFilter.d__3.MoveNextで(タスク タスク)() ---スタックトレースの終わり例外がスローされた前の場所から--- にSystem.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()で System.Runtime.Compile System.Runtimeで Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.d__20.MoveNextでrServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(タスク タスク)() ---例外がスローされた以前の位置からスタックトレースの終わり--- .ExceptionServices.ExceptionDispatchInfo.Throw()at Microsoft.AspNetCore.Builder.RouterMiddleware.d__4.MoveNext()のSystem.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(タスク タスク) ---前回の場所からのスタックトレースの終了例外がスローされました--- でSystem.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() にSystem.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(タスク Microsoft.AspNetCore.HttpOverrides.HttpMethodOverrideMiddleware.d__4.MoveNext() でタスク)--- exce

答えて

1

は、あなたが(この参照定義済みのマシン鍵を持っています、以前の場所からスタックトレースの終わり:Adding machineKey to web.config on web-farm sitesを) ?両方のサーバーには同じmachineKey設定エントリが必要です(IIS内またはオンラインツールを使用して生成できます)。

<machineKey 
    validationKey="GENERATED VALUE"   
    decryptionKey="GENERATED VALUE" 
    validation="SHA1" 
    decryption="AES" /> 
+0

Google DBAに確認していただきありがとうございます。 –

関連する問題