为什么有人会将OAuth 2用于此类拨款?我的意思是,如果客户端已经拥有资源所有者的名称和密码,为什么不使用资源服务器使用的任何身份验证工具作为资源所有者进行身份验证?
我不明白这里的理由.有人可以解释一下吗?
如规范所述,资源所有者密码凭据授权仅用于迁移目的,仅适用于客户端和授权服务器由同一方控制的方案,https://tools.ietf.org/html/rfc6749 #section-1.3.3:
资源所有者密码凭证(即,用户名和密码)可以直接用作授权授权以获得访问
令牌.只有
在资源所有者和客户端之间存在高度信任时(例如,
客户端是设备操作系统或高权限
应用程序的一部分),以及其他授权授权类型不可用时,才应使用凭证
(例如授权码).
它允许在客户端和资源服务器之间的支路上使用标准令牌和协议(例如OAuth 2.0承载令牌),同时使用"待弃用"方式在客户端和授权服务器之间获取令牌.https://tools.ietf.org/html/rfc6749#section-10.7:
资源所有者密码凭据授予类型通常用于
遗留或迁移原因.它降低了
客户端存储用户名和密码的总体风险,但不会消除向客户端公开高权限凭据的需要.此授权类型比其他授权类型具有更高的风险,因为它维护了此协议试图避免的密码反模式.客户端可能滥用密码,或者密码可能无意中被泄露给攻击者(例如,通过日志文件或客户端保存的其他记录).
此外,由于资源所有者无法控制授权过程(资源所有者的参与在将其凭据移交给客户端时结束),因此客户端可以获得
范围超出资源
所有者所需范围的访问令牌.授权服务器应考虑
通过此授权类型发出的访问令牌的范围和生命周期.授权服务器和客户端应该尽可能地减少对此授权类型的使用,并尽可能利用其他授权类型.
| 归档时间: |
|
| 查看次数: |
3697 次 |
| 最近记录: |