Angularjs和WebAPI - 身份验证和授权

时间:2017-01-19 15:32:18

标签: c# .net angularjs asp.net-web-api

我想在我的应用程序中实现身份验证和授权。我正在使用AngularJs和ASP.NET Web API开发我的应用程序。

我想实现:

  1. 它是一个Intranet应用程序,想要使用Windows身份验证。
  2. 对于授权,我们希望在用户名和角色列的数据库中维护一个表,并使用此表我们将授权用户。
  3. 请建议我如何使用AngularJs和Web API在我的应用程序中实现这一点。

1 个答案:

答案 0 :(得分:0)

设置WebAPI库以使用Windows身份验证。将[Authorization]属性添加到控制器。您的启动逻辑当然可以从数据库中提取角色名称,并添加这些角色以用于控制器/方法的[Authorization]属性。

我不知道我会在每个用户名的基础上执行此操作 - 如果我使用的是Windows身份验证,我会创建一些角色(例如管理员,用户)并通过AD控制这些角色。然后,我只将AD组名称存储为我的角色名称。

Angualr.JS在这里并没有真正考虑到这一点 - 认证将由浏览器处理。您可能想要或需要的一件事是从API层中的User对象获取用户名的某种方式 - 换句话说,创建一个API方法来返回有关登录用户的信息(包括该用户的名称) ,如果您使用其他形式的身份验证,则不会由Angular.JS应用程序管理。