2013-04-03 18 views
18

を展開します。重要な進歩の後、私はそれをローカルネットワークを介して利用可能にすることに決めました。私はVisual Studioから仮想ディレクトリを作成しました。私はログインできますが、新しいユーザーを登録しようとするとログインできます。私は以下のエラーが表示されます。は、私がIISExpressに建てられたのVisual Studio 2012を使用して、私のローカルマシン上でASP.NET MVCアプリケーションに取り組んでいますAntiforgeryTokenエラー

偽造トークンを復号化できませんでした。このアプリケーションは が Webファームまたはクラスタによってホストされている場合、すべてのマシンが ASP.NET Webページの同じバージョンを実行していることを確認し、設定を明示的 暗号化と検証キーを指定していること。 AutoGenerateはクラスタ内では使用できません。

私は(ASPNET resources)から新しいマシンのキーを生成し、私の設定ファイルにそれを置く誰かが解決策を提案working.Canはまだないのですか?

+5

、単に "MVC" と "ASP.NET MVC" を参照停止してください。一方はフレームワークであり、他方は言語に依存しない設計パターンです。 Internet Explorerを呼び出すようなもの - 「インターネット」 –

+6

「ASP.NET MVC」ではなく「MVC」を使ってインターネットを検索すると、余分な時間を費やすことになるかもしれませんが、ケース1は、OPが何を話しているかを理解するためにこの質問のために選ばれたSOタグを見ることができます。 – JBeckton

+0

asp.net mvcのバージョン番号も表示されることはありません – BozoJoe

答えて

7

あなたは、ウェブサイト/機械の組み合わせに固有のマシンキーを追加する必要があります。トークンジェネレータが使用するのはこのマシンキーです。これは、あなたがhere (dead link-beware)を行うと、あなたのマシン上のWeb.configファイルに追加することができ、マシンのキーを(生成する必要があることを意味しますが、ここではより多くの情報を見つけることができます。 http://msdn.microsoft.com/en-us/library/ff649308.aspx

また、IIS内から直接これを行うことができます:私が気づいhttp://blogs.msdn.com/b/amb/archive/2012/07/31/easiest-way-to-generate-machinekey.aspx

+0

私の記事を読む、私はすでにこれを以前試みました。私は私のIISマネージャパネルにマシンキーアイコンがないことに気付きました。それは問題になることができますか? – user1656779

+0

はい、確かに問題になる可能性があります。 Web.configファイル内の間違った場所にmachineKeyエントリを配置した可能性があります。 Web.configをどのように追加したのか確認できるようにWeb.configを投稿できますか? –

32

ことの一つは、このエラーは、ページ上のコードの複数の@Html.AntiForgeryToken()部分を持つことによって引き起こされる可能性があることです、私は私のページに2を持っていたと私は第二1を取り外した後、このエラーは去っていきました

+2

これは私にも起こったことを確認することができます。 – Leigh

+3

私も。私にとっては、@ Html.AntiForgeryToken()行の2番目のコピーが部分的に表示されていました。私は部分的な見解でそれをコメントアウトし、ログインページが再び働き始めました。 –

+2

IE9でこれが起こりました。私は誤ってFORMタグを入れました。新しいブラウザでは問題ありませんでしたが、古いブラウザでは複数のトークンを送信していました。 (私はappendToにjqueryダイアログを設定しました:#Main> form) – colinbashbash

1

私の場合、これはサイトのセッション持続性を有効にしていないロードバランサの問題でした。

0

私は部分的なビューを使用していたページを持っていました。どちらも@Html.AntiForgeryToken()を含み、@ Html.AntiForgeryToken()を部分ページから削除すると、うまくいきました。

関連する問題