<input type="hidden">是否防篡改?

问题描述 投票:-1回答:1

Asp.Net Core是否能防止隐藏输入被篡改?是否有由中间件处理的某种签名来防止篡改?是否有由中间件处理的某种签名来防止篡改?__RequestVerificationToken 照顾到了吗?

security asp.net-core asp.net-core-mvc
1个回答
0
投票

ASP.NET Core 使用以下方法实现了防伪功能 ASP.NET核心数据保护. 当以下API之一被调用时,Antiforgery中间件被添加到依赖注入容器中。Startup.ConfigureServices: AddMvc、MapRazorPages、MapControllerRoute和MapBlazorHub。

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

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

该令牌是唯一且不可预知的。服务器将与当前用户身份相关联的令牌发送给客户端。客户端将令牌发回给服务器进行验证。如果服务器收到的令牌与认证用户的身份不符,则拒绝该请求。

更多细节信息,请查看 防止ASP.NET Core中的跨站请求伪造(XSRFCSRF)攻击。.

© www.soinside.com 2019 - 2024. All rights reserved.