28

ASP.NetMVC4ベータ版の代わりにASP.NetMVC4RCをインストールしました。既存のアプリケーションを実行しようとすると、AntiForgeryToken非推奨のエラーメッセージが表示されます。これが私のコードです:

using (Html.BeginForm("", "", FormMethod.Post, new { id = "MonthElectionForm" }))
{
    @Html.AntiForgeryToken("AddEditMonthElection")
}

- - アップデート - -

ASP.Net MVC 4 RCにより、ValidateAntiForgeryToken属性およびAntiForgeryTokenhtmlヘルパーのSaltプロパティが廃止されました。したがって、私のコードは次のようになります。

コントローラ:

        [HttpPost]
        [ValidateAntiForgeryToken]
        public JsonResult CreateCompany(CompanyDataEntryViewModel modelData)
       {...}

形:

@using (Html.BeginForm("", "", FormMethod.Post, new { id = "CreateCompanyDataEntryForm" }))
{
    @Html.AntiForgeryToken()
...
}

生成されたHTMLを見ると、AntiForgeryTokenは引き続き非表示フィールドを生成し、暗号化された値を提供します。私の行動もまだ機能します。しかし、暗号化プロセスで使用するキーを指定する機能が失われました。プロセスがどのように機能するかはよくわかりませんが、アクションとフォームにソルト値を設定していたことがわかります。アクションが投稿を受け入れるには、値が一致している必要がありました。では、今どのように塩分値を設定しますか?AntiForgeryConfig AdditionalDataProviderと関係があると思いますが、AntiForgeryConfigAdditionalDataProviderの使用方法について何もわかりません。助けてください。

ありがとう

4

1 に答える 1

43

saltパラメータの設定は不要であり、追加の保護は提供されなかったため、サポートを削除しました。

詳細については、 ValidateAntiForgeryTokenのソルト値を選択する方法の私の回答を参照してください。

于 2012-06-01T19:46:21.103 に答える