小编emu*_*mcu的帖子

如何手动设置 HttpContext.User.Identity.IsAuthenticated 的值

我正在创建一个 Asp.NET MVC 5 应用程序。对于这个项目,我正在尝试实现自定义身份验证机制(我不想使用表单身份验证/OWIN 等外部提供程序)

我创建了一个自定义授权属性,如下所示:

[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple = true, Inherited = true)]
public class myAuthorize : AuthorizeAttribute
{
    protected override bool AuthorizeCore(HttpContextBase httpContext)
    {            
        if (!HttpContext.Current.Request.IsAuthenticated)
        {
            httpContext.Response.Redirect("~/Account/Login");
        }                            

        return base.AuthorizeCore(httpContext);
    }
}
Run Code Online (Sandbox Code Playgroud)

在我的登录操作中,我试图更改的值

HttpContext.User.Identity.IsAuthenticated
Run Code Online (Sandbox Code Playgroud)

但它是只读的,我无法更改该值。我可以手动更改它的值还是我犯了一个逻辑错误。

c# model-view-controller

4
推荐指数
1
解决办法
3382
查看次数

标签 统计

c# ×1

model-view-controller ×1