環境
VS 2019 ですぐに使えるテンプレートから新しい ASP.NET Core Razor ページ アプリケーションを作成した後、最も純粋なモデル クラスを使用した最も純粋な html フォームでさえ、出力を次のようにレンダリングすることに気付きました。<input name="__RequestVerificationToken" type="hidden" value="...">
質問
ASP.NET Core に偽造防止を追加するように指示する明示的な属性/ステートメントがどこかにありますか、それとも現在はこれが既定になっていますか? (これにより、使用が[AutoValidateAntiforgeryToken]
廃止されます)
...また...
それは常に無条件に<input name="__RequestVerificationToken" type="hidden" value="...">
レンダリングされるものであり、それに対してサーバー側の検証を有効にできますか? この場合、検証が有効かどうかをテストするにはどうすればよいですか?[AutoValidateAntiforgeryToken]
サンプルコード
@page
@model TestFormModel
@{
ViewData["Title"] = "Home page";
}
<div class="text-center">
<form method="post">
<input type="text" name="myinput"/>
<input type="submit" value="Submit" />
</form>
</div>
//[AutoValidateAntiforgeryToken]
public class TestFormModel : PageModel
{
private readonly ILogger<TestFormModel> _logger;
public TestFormModel(ILogger<TestFormModel> logger)
{
_logger = logger;
}
public void OnGet()
{
}
public void OnPost()
{
}
}