<输入类型= "hidden" >防篡改吗?



Asp.Net 核心能防止隐藏的输入被篡改吗?中间件是否处理某种签名以防止篡改?__RequestVerificationToken会照顾到这一点吗?

ASP.NET Core使用 ASP.NET Core Data Protection 实现防伪。当在Startup.ConfigureServices中调用以下 API 之一时,防伪中间件将添加到依赖注入容器中:AddMvc、MapRazorPages、MapControllerRoute 和 MapBlazorHub。

当我们在<form>元素中添加@Html.AntiForgeryToken时,它会生成隐藏字段来存储防伪令牌。

<input name="__RequestVerificationToken" type="hidden" value="CfDJ8NrAkS ... s2-m9Yw">

令牌是唯一且不可预测的。服务器将与当前用户标识关联的令牌发送到客户端。客户端将令牌发送回服务器进行验证。如果服务器收到的令牌与经过身份验证的用户的身份不匹配,则请求将被拒绝。

有关更多详细信息,请查看 ASP.NET Core 中的防止跨站点请求伪造 (XSRF/CSRF( 攻击。

相关内容

  • 没有找到相关文章

最新更新