ven*_*atr 5 oauth-2.0 openid-connect azure-ad-b2c
OAuth 2.0 规范定义了机密和公共客户端。https://tools.ietf.org/html/rfc6749#section-2.1
这是根据 OAuth 2.0 规范的处方
但是,根据 Microsoft 文档,AD B2C 的处方如下 https://docs.microsoft.com/en-us/azure/active-directory-b2c/active-directory-b2c-reference-oauth-code
基于上述推论,我们对 Web 应用程序和 SPA 很清楚,这里没有混淆。
但是,对于桌面和移动应用程序,为什么 Microsoft 建议使用 Auth 代码授予流程而不是隐式流程 [即使根据 Microsoft 文档,它们也是公共客户端]?
发布我从 Microsoft 收到的答案,我认为在这种情况下更合适。
请参考https://tools.ietf.org/html/rfc8252#section-8.2,下面说 -
OAuth 2.0 隐式授予授权流程(在 OAuth 2.0 [RFC6749] 的第 4.2 节中定义)通常适用于在浏览器中执行授权请求并通过基于 URI 的应用间通信接收授权响应的实践。但是,由于 PKCE [RFC7636](第 8.1 节要求)无法保护隐式流,因此不建议将隐式流与本机应用程序一起使用。
在没有用户交互的情况下,通过隐式流授予的访问令牌也无法刷新,这使得授权代码授予流(可以发布刷新令牌)成为需要刷新访问令牌的本机应用程序授权的更实用的选项。
| 归档时间: |
|
| 查看次数: |
2452 次 |
| 最近记录: |