Kon*_*tin 6 security authentication api oauth openid-connect
我一直在广泛阅读有关 OAuth 和 OpenID Connect 的信息,但这个问题特别是关于 OAuth2 资源所有者密码授予(又名 OAuth2 资源所有者凭据授予,又名 OAuth2 密码授予)
一些资源(例如 Justin Richer 的“OAuth2 in Action”一书)说不要使用 OAuth2 Resource Owner Password Grant 进行身份验证- 请参阅本书中的第 6.1.3 节。
其他像下面这样的好资源都说我们可以使用 OAuth2 Resource Owner Password Grant 通过受信任的应用程序对用户进行本质上的身份验证:
但是我很难理解为什么我们不应该使用 OAuth2 资源所有者密码授予作为成功身份验证的基本证明?
我对资源所有者密码授予流程的理解是,用户名和密码由最终用户提供给受信任的客户端(我的本机应用程序),然后将其转发到我的 API 的 OAuth 服务器并将其交换为访问令牌(以及可选的刷新令牌),它可以用于其他经过身份验证的 API 端点。本机应用程序不保存用户名/密码,而是依赖于短期访问令牌和长期刷新令牌(以在它们到期时获取新的访问令牌)。
为什么我什至需要 OpenID Connect?为什么我不能只使用 OAuth2 资源所有者密码授予作为身份验证机制?
本机应用程序和 API 都是由同一个人(我)开发的。
欢迎任何解释。谢谢你。
jwi*_*eke -1
无论授权类型如何,OAuth 2.0都不是身份验证协议。
OpenID Connect 是构建在 OAuth 2.0 之上的身份验证协议
以下是一些参考资料(其中一些来自编写 OAuth 2.0 和/或 OpenID Connect 的人员):
| 归档时间: |
|
| 查看次数: |
1427 次 |
| 最近记录: |