【发布时间】:2017-11-24 16:22:19
【问题描述】:
在 OAuth2 中,我的服务器首先将用户重定向到服务的授权服务器。如果用户接受并且一切顺利,身份验证服务器应该将用户重定向回我使用适当的授权代码定义的回调 url。
但是,如果对回调 url 的请求无效(即参数格式错误、缺少验证码等),服务器应该返回什么状态?我在想 400 Bad Request 或者 500 Internal server error,但这真的不是服务器的错。
【问题讨论】:
在 OAuth2 中,我的服务器首先将用户重定向到服务的授权服务器。如果用户接受并且一切顺利,身份验证服务器应该将用户重定向回我使用适当的授权代码定义的回调 url。
但是,如果对回调 url 的请求无效(即参数格式错误、缺少验证码等),服务器应该返回什么状态?我在想 400 Bad Request 或者 500 Internal server error,但这真的不是服务器的错。
【问题讨论】:
RFC 6749 Section 4.1.2.1 描述了这种情况。
"如果由于重定向 URI 丢失、无效或不匹配而导致请求失败,或者客户端标识符丢失或无效,授权服务器应该通知资源所有者该错误并且不能自动重定向用户代理到无效的重定向 URI"
错误信息有进一步说明。
【讨论】: