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

C#中Authorize属性失效,登录成功后仍跳转至登录页问题

问题分析与解决方法

核心问题:中间件顺序错误

你当前的中间件注册顺序颠倒了,UseAuthorization在UseAuthentication之前执行会导致授权逻辑先运行,此时用户身份还未被认证系统识别,所以会被强制重定向到登录页。

修正后的中间件顺序:

app.UseAuthentication();
app.UseAuthorization();

额外检查项

  • 确保User类继承自IdentityUser,Role类继承自IdentityRole,这是Identity框架正常工作的基础
  • 验证[Authorize]属性是否正确应用在需要保护的控制器或Action上,示例:
    [Authorize]
    public class HomeController : Controller
    {
        public IActionResult Index()
        {
            return View();
        }
    }
    
  • 登录成功后,通过浏览器开发者工具的Application标签,确认.AspNetCore.Identity.Application Cookie已正常生成
  • 测试时可直接访问受保护端点,而非仅通过跳转链接验证,排除跳转逻辑的干扰

内容的提问来源于stack exchange,提问作者Ирина Ивановна

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 11:35:20