1

本番環境の問題をデバッグするには、認証 Cookie を復号化するツールが必要です。FormAuthentication を使用して復号化する簡単なスクリプトを作成しました。

FormsAuthenticationTicket authTicket = FormsAuthentication.Decrypt(source.Text);

サーバーには machineKey が設定されており、このアプリでも同じキーを使用しています。Fiddler を使用して Cookie テキストを取得しています。ただし、FormAuthentication.Decrypt を使用すると、常に Unable to Validation Exception が発生します。Cookie は HttpOnly に設定されています。

何か不足していますか?

注:同様の質問がいくつかありましたが、これまでのところ回答が役に立たなかったため、新しい質問を投稿することにしました.

4

1 に答える 1

0

マシンまたはある種のマシン関連の識別子に関連しているようです。本番サーバーと同じサーバー (つまり、Cookie が生成された場所) でサンプル スクリプトを実行したとき。復号化は正常に機能します。私はまだその理由を深く掘り下げていませんが、簡単に振り返ってみましょう

System.Web.Configuration.MachineKeySection.EncryptOrDecryptData

ほとんどすべての例外に対して Unable_to_validate_data がスローされることを示しています。

于 2012-10-10T05:22:17.183 に答える