栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > asp

ASP.NET Core 2.0中Razor页面禁用防伪令牌验证

asp 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

ASP.NET Core 2.0中Razor页面禁用防伪令牌验证

在这篇短文中,我将向您介绍如何ASP.NET Core Razor页面中禁用防伪令牌验证。

Razor页面是ASP.NET Core 2.0中增加的一个页面控制器框架,用于构建动态的、数据驱动的网站;支持跨平台开发,可以部署到Windows,Unix和Mac操作系统。

跨站点请求伪造(也称为XSRF或CSRF)是对Web托管应用程序的攻击,因为恶意网站可能会影响客户端浏览器和浏览器信任网站之间的交互。这种攻击是完全有可能的,因为Web浏览器会自动在每一个请求中发送某些身份验证令牌到请求网站。这种攻击形式也被称为 一键式攻击 或 会话控制,因为攻击利用了用户以前认证的会话。关于这个话题可以看我的另一篇博客:ASP.NET Core 防止跨站请求伪造(XSRF/CSRF)攻击。

Razor页面被设计为默认启动防跨站请求伪造攻击的,防伪令牌生成和验证被自动包含在Razor页面中。但是,在某些情况下,您可能想禁用它。

全局禁用

要在Razor页面中全局禁用防伪令牌验证,可以在Startup类的ConfigureServices方法中禁用:

public void ConfigureServices(IServiceCollection services)
 {
  services.AddMvc().AddRazorPagesOptions(o=>
  {
   o.Conventions.ConfigureFilter(new IgnoreAntiforgeryTokenAttribute());
  });
 }

这将关闭整个应用程序的防伪令牌验证。请注意,禁用防伪令牌验证不会阻止生成隐藏字段或cookie。它只是跳过验证过程。

我们知道防伪令牌是通过FormTagHelper生成的,好在ASP.NET Core MVC提供了全局设置标签助手的方法:

public void ConfigureServices(IServiceCollection services)
 {
  services.AddMvc().InitializeTagHelper

关于这个话题就介绍完了,如果您感兴趣,不防测试一下。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/55335.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号