oauth2 – unauthorized_client和access_denied之间有什么区别

我正在阅读
oauth2 specs,我对unused_client和access_denied错误代码感到困惑.他们似乎表达了同样的错误条件,不是吗?乍一看(通过错误代码)我认为一个用于身份验证失败而另一个用于授权失败,但它们实际上都是关于授权失败,这将转换为http 403状态代码.

 unauthorized_client
       The client is not authorized to request an access token
       using this method.

 access_denied
       The resource owner or authorization server denied the
       request.

最佳答案 unauthorized_client:

  实际上,这个错误可能会出现:

>如果客户请求不允许的范围
>假设您要使用刷新令牌流,但服务器上的客户端配置不允许这样做.
>类似的用例,客户端尝试按照Authz服务器上的客户端配置执行某些操作
现在出现上述问题,客户端出现故障.

拒绝访问
  如果您的客户端正常但可能会发生这种情况

>资源所有者取消了OAuth流程(例如,当某个客户端点击谷歌时,会出现同意页面,其中“使用”可以允许或拒绝访问)
>如果资源服务器出于某种原因认为不应授予此客户端访问权限

正如您所看到的,access_denied是由资源所有者或服务器引起的,而不是由于客户端引起的

我希望这有帮助

点赞