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

手动新建标签页与外部链接自动开页的ASP.NET Core验证令牌不一致问题

问题:Firefox/Chrome 119中ASP.NET Core防伪令牌因标签页打开方式出现异常行为

核心现象

  • 在Firefox 119和Chrome 119环境下,ASP.NET Core应用遇到防伪令牌验证异常:
    • 手动新建标签页并粘贴链接打开页面时,页面表单生成的RequestVerificationToken有效,提交POST请求可正常执行
    • 通过外部链接(如邮件内的链接)点击自动打开标签页时,同一页面、同一表单生成的RequestVerificationToken无效,POST请求返回404或401等令牌失效对应的预设响应
  • 该问题仅在浏览器已存在同域标签页时必现

初步排查结果

  • 推测异常可能和标签页间的Cookie共享/泄漏有关,但无法解释为何仅自动开页会出现这种差异
  • 观察到自动开页生成的验证令牌长度明显更短,具体原因暂不明确
  • 给接收POST请求的处理器添加[IgnoreAntiforgeryToken]特性后,问题完全消失,确认异常是由开页方式导致防伪令牌验证失败引发

测试更新

搭建了仅包含单个Razor Page的简易测试应用(无认证逻辑,仅含带提交按钮的简单表单),并通过本地邮件发送链接测试,发现行为出现反转:

  • 外部链接打开的标签页中,令牌验证有效
  • 但该操作会导致浏览器中已加载的同域标签页内的令牌失效,问题变得更复杂,后续会更新排查进展

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 02:15:06