使用.NET Web API的AngularJS:使用AD进行身份验证

时间:2014-12-19 21:25:21

标签: asp.net .net angularjs authentication asp.net-web-api

我有一个.NET Web API,其中包含一组Angular App调用的端点/方法。我想现在针对我们的活动目录实现登录系统,并想知道我的选项是什么。

回到过去,它很简单:windows或表单身份验证,然后只是web.config中的一些简单配置,可能是自定义提供程序。但现在看来,OWIN,OAuth,基于令牌的身份验证等有很多选择。

我从哪里开始?我在Angular应用程序上有一个带有用户名,密码和登录按钮的表单,我在后端有一个活动目录。用户点击登录按钮后会发生什么?任何方向都会有所帮助。

感谢。

1 个答案:

答案 0 :(得分:1)

嗯,这取决于你真正需要的是什么。

如果您只想验证AD用户,那么您可以代表他们尝试在AD中进行身份验证,如果成功,您将返回令牌或身份验证cookie。

但我不认为让用户使用他们的域密码是个好主意,除非你有两个因素身份验证。

最好通过服务扩展AD模式以及用于身份验证的其他数据,甚至使用具有关联域用户信息的独立auth服务器。看看它是如何在SQL服务器中完成的(但反向):您需要定义与域登录相对应的内部用户。这种方法允许您拥有不属于AD的用户,有时这对于外包某些任务非常重要。

查看IdentityServer