轻松实现对asp.net核心API的授权

时间:2018-01-30 02:02:40

标签: c# asp.net asp.net-core

我需要将授权添加到我的asp.net核心API,并且想知道选择哪一个。

  

基本上我的需求是:呼叫者提供密钥和密码(在   我需要针对外部表格进行授权的标题)   数据库。

     

然后我使用id来检查调用者是否具有特定权限   客户。数据库中的所有对象都属于客户端。

我已经阅读了简单授权,它看起来提供了我所需要的一切。除了我希望能够为所有调用添加整体身份验证,而不必为每个函数添加变量密钥和密码。 这可能吗?

任何提示都将受到高度赞赏!

1 个答案:

答案 0 :(得分:1)

您想要的是基本身份验证,您可以使用idunno.Authentication来实现此目的。

演示here可以帮助您使用它。

对于全局身份验证,您只需使用以下代码

即可
services.AddMvc(config =>
{
    var policy = new AuthorizationPolicyBuilder()
    .RequireAuthenticatedUser()
    .Build();

    config.Filters.Add(new AuthorizeFilter(policy));
});

编辑:
出于安全考虑,请考虑GitHub中的注释。