You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ASP.NET Core 6中移除或重命名默认antiforgery Cookie?

ASP.NET Core 6 下修改/移除默认Antiforgery防伪造Cookie方案

你之前两次配置没生效的核心原因有两个:

  • 配置HeaderName是指定Antiforgery校验时从请求头读取令牌的字段名,和Cookie命名完全无关,不会修改默认Cookie
  • Antiforgery配置必须放在AddControllersWithViews/AddRazorPages/AddIdentity这类内置集成防伪造逻辑的服务之前注册,写在后面的配置会被这些服务内置的默认规则覆盖,这也是你之前配置后只改动了Identity相关Cookie、没影响Antiforgery默认Cookie的根本原因。

Antiforgery默认Cookie效果截图


把Antiforgery配置移到所有MVC/身份认证服务注册之前,完整配置如下:

var builder = WebApplication.CreateBuilder(args);

// 注意:该配置必须放在AddControllersWithViews/AddRazorPages/AddIdentity之前
builder.Services.AddAntiforgery(options =>
{
    // 自定义Cookie名称
    options.Cookie.Name = "your-custom-antiforgery-name";
    // 显式指定Cookie作用路径为站点根目录,避免子路径生成重复Cookie
    options.Cookie.Path = "/";
    // 生产环境建议开启以下安全配置
    options.Cookie.HttpOnly = true;
    options.Cookie.SecurePolicy = CookieSecurePolicy.Always;
    options.Cookie.SameSite = SameSiteMode.Strict;
    options.Cookie.IsEssential = true;
});

// 后续再注册其他业务、认证服务
builder.Services.AddControllersWithViews();
// 若使用Identity,注册代码放在Antiforgery配置之后
// builder.Services.AddDefaultIdentity<IdentityUser>(...)
//     .AddEntityFrameworkStores<AppDbContext>();

如果配置后还是出现带随机后缀的默认Antiforgery Cookie,检查项目是否自定义了DataProtection的应用隔离标识,显式给Antiforgery配置指定固定Cookie名后,后缀不会再自动追加。


风险提示:移除Antiforgery Cookie意味着默认跨站请求伪造防护失效,仅可用于内部接口、已自行实现请求签名校验的场景,公网面向用户的站点不建议关闭。
操作步骤如下:

  1. 全局关闭自动防伪造校验,配置服务不生成对应Cookie:
var builder = WebApplication.CreateBuilder(args);

builder.Services.AddControllersWithViews(options =>
{
    // 全局关闭自动Antiforgery令牌校验
    options.Filters.Add(new IgnoreAntiforgeryTokenAttribute());
});

builder.Services.AddAntiforgery(options =>
{
    // 置空Cookie名,阻止默认Cookie写入
    options.Cookie.Name = string.Empty;
});
  1. 检查所有Razor视图文件,删除所有@Html.AntiForgeryToken()的调用代码,该方法会主动触发Antiforgery Cookie生成,移除后不会再自动向响应写入该Cookie。

内容的提问来源于stack exchange,提问作者Rico

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.31 13:01:20