dab*_*abs 8 authentication adfs angularjs single-page-application
我正在编写一个相当大的应用程序,使用HTML/CSS/JS前端,使用AngularJS和ASP.NET MVC Web API作为后端.
我希望用户能够进行身份验证,我已在单独的计算机上安装了ThinkTecture AuthorizationServer,并且在域控制器上运行了一个ADFS实例.目前,我正在使用随ADFS提供的网页进行登录,但如果我可以使用我自己的页面,这会要求输入用户名/密码组合,将其传递给AuthorizationServer/ADFS,然后使用之后的身份验证令牌.
有没有人做过类似的事情?
此致,Daníel
事实上,您的用户将登录您的 SPA,然后您有一个服务器端(Java 或 .NET 或 *)来获取此请求。
服务器向 ADFS 请求令牌,ADFS 发送令牌,服务器通过 cookie 在响应中将令牌传递给 AngularJS。
在 Angular 方面,不需要做任何事情,期望 http 拦截器检查响应的状态(401,403)......
如果你想知道如何在 AngularJS 上实现 htppInterceptor,那么 AngularJS 将在每个请求中自动重新发送 cookie,只需检查:
AngularJs - .net MVC WebApi 身份验证示例
在这篇文章中,我解释了如何实现此步骤。
无论如何:您的 SPA 是 RIA,但仍然是 Web 应用程序的客户端部分。我不认为让客户端部分直接联系 ADFS 真的很好(我认为这真的很糟糕)...如果这样做,如何防止中间人?
| 归档时间: |
|
| 查看次数: |
2591 次 |
| 最近记录: |