首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >OAuth 2.0 -当资源所有者凭证无效时,为什么授权服务器返回400而不是401?

OAuth 2.0 -当资源所有者凭证无效时,为什么授权服务器返回400而不是401?
EN

Stack Overflow用户
提问于 2014-03-22 08:10:50
回答 2查看 4.3K关注 0票数 17

使用资源所有者密码授予类型时,如果由于资源所有者输入的密码不正确而无法授予访问令牌,则授权服务器似乎应使用HTTP 400 (Bad Request)状态代码进行响应。我是基于对RFC6749第5.2**节的理解得出这个结论的,在令牌由于invalid_grant而无法授予的情况下,该节规定“授权服务器使用HTTP400 (Bad Request)状态码进行响应”。列出的invalid_grant原因包括资源所有者凭据无效。

我的理解正确吗?如果是,为什么不返回HTTP 401 (未授权)?使用基本身份验证时,无效的密码将导致401。为什么OAuth 2.0规定要返还400?这是因为401是为无效的客户端凭据保留的吗?

**请参阅https://www.rfc-editor.org/rfc/rfc6749#section-5.2

EN

回答 2

Stack Overflow用户

发布于 2015-01-06 20:11:32

我也想知道这一点,但似乎401响应需要在响应中返回一个WWW-Authenticate头部,这在这个OAuth流中没有意义。This is the link链接到规范设计者讨论此问题的线程。

对于完整性(tl;dr):here是来自OAuth团队的Eran Hammer-Lahav澄清这个问题的具体消息。

票数 10
EN

Stack Overflow用户

发布于 2015-01-08 16:30:29

我猜它是以这种方式实现的,因为客户端提供了无效数据,即(用户名、密码、刷新令牌等)。客户端没有尝试访问受保护的资源,因此他将收到HTTP 400,以指示他应该更正其输入。通常,当您尝试使用无效或过期的访问令牌访问受保护的资源时,您应该收到401。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22586825

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档