asp.net vnext。 mvc 6.实现简单的自己授权

标签 asp.net rest asp.net-web-api authorization asp.net-core

我正在为学习 vNext 和新的 MVC 编写简单的 REST 服务。我想了解如何使用自定义逻辑创建简单的 OWIN 授权。 例如,假设某个服务只有一个简单的内存中 token 列表,我想检查请求是否包含该列表中存在的 token 。

如果我理解正确,我只需要重写 AuthorizeAttribute 类,但我找不到如何以正确的方式执行此操作。

public class CustomAuthorize : AuthorizeAttribute
{
    public override Task OnAuthorizationAsync(AuthorizationContext context)
    {
        return base.OnAuthorizationAsync(context);
    }
}

如果我误解了这一点,您能否解释一下我需要使用哪些类以及我可以这样做吗?

最佳答案

您可以使用:

public class AuthorizeClass: ActionFilterAttribute
    {
        public override async Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next)
        {
            if (context.HttpContext.Session["token"] == null || context.HttpContext.Session["user"] == null)
            {
                context.HttpContext.Response.Redirect("/login");
            }
            await next();
        }

    }

关于asp.net vnext。 mvc 6.实现简单的自己授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27468668/

相关文章:

iis - 虚拟目录未配置为 IIS 中的应用程序

ASP.NET Web 应用程序死锁 - 认为这是由 SQL Server 锁定引起的

java - 通过 HTTP PUT 请求上传文件

c# - 在我的数据库中更改 FK 的级联行为时需要更新模型吗?

c# - 从 Web API C# 返回 XML

c# - Blazor onended 不开火

asp.net - 分页在 AJAX 更新面板内的 asp.net gridview 中不起作用

java - Spring Data Rest - 在 _embedded 中包含嵌套资源

java - 当路径中的第一个缺失时,多个 PathParams 不会失败

asp.net-mvc - 使用 Web Api 验证 .NET MVC 应用程序