2

私は、ユーザーのリストをレンダリングするループを持っています特定のユーザーに送信します。入力ボタンは、アクションメソッドへのPOST要求を行います。複数Html.AntiForgeryTokenは、私の見解で

Html.AntiForgeryTokenでこれを保護したいと思います。ただし、各テーブル行には、Html.BeginFormと入力ボタンがあります。

<td> 

      <% using(Html.BeginForm(user.IsInRole ? "RemoveUserFromRole" : "AddUserToRole", "usermanagement", FormMethod.Post)) { %>     
      <%: Html.AntiForgeryToken("AddRemoveUser") %> 
      <input name="action" type="submit" value="Update" /> 

      <% } %> 

      </td> 

どうすればよいですか? Html.BeginFormごとに複数のHtml.AntiForgeryTokenをレンダリングしますか?これは正しいですか?

ありがとうございました

答えて

0

すべてのトークンに同じsalt値を使用できます。

<%: Html.AntiForgeryToken("some_random_string") %> 

、その後、あなたはにあなたが投稿されている2つのコントローラのアクションでこれと同じ塩を適用してみてください:あなたは別の解決策を考えるべき

[ValidateAntiForgeryToken(Salt = "some_random_string")] 
+0

!今度はこのSaltは廃止されました。 'System.Web.Mvc.ValidateAntiForgeryTokenAttribute.Salt' 'Salt'プロパティは非推奨です。 トークン内に埋め込むカスタムデータを指定するには、 静的AntiForgeryConfig.AdditionalDataProviderプロパティを使用します。 ' – Bellash

関連する問題