我想实现一个登录流程,用户可以使用
登录我的网站对于第1点,我明白了
对于第2点,
我的查询:
我是Oauth的新手,所以如果我在任何地方都错了,请纠正我。
注意:我的客户端应用程序是浏览器中的Angular 2应用程序。
感谢。
答案 0 :(得分:0)
您可以使用弹出式登录窗口以隐式流程完成登录。这将加载身份提供程序登录页面(/ authorize端点),但不会在浏览器中执行完全重定向。然后,身份提供商可以设置适当的cookie并为您提供访问令牌。这是单页应用程序的规范模式(角度,反应等)。 Here's some reading可以为协议赋予一些颜色(在Azure AD的范围内,但其中很多都超越了身份提供程序实现细节)。
资源所有者密码流通常不是一个好主意,但可以在少数情况下使用。像守护进程应用程序或测试这样的东西都很好。一般来说,它非常脆弱,不会支持MFA或动态同意情况。而且,传统的隐式代码或授权代码流本质上不太安全。 Here's一篇很棒的博客文章,介绍在Azure AD(企业帐户身份提供商)范围内使用它的好案例。