【问题标题】:OAuth flow without asking user for authorization无需用户授权的 OAuth 流程
【发布时间】:2020-08-03 07:34:00
【问题描述】:

我正在考虑使用 OAuth 授予应用程序对用户资源的访问权限。在封闭的公司环境中一切正常。

我想到的第一个流程是授权码流程,一切看起来都是我需要的,但我不想要求用户授权访问,因为它是公司内部的应用程序和帐户,用户没有理由不授予它。我想向用户询问登录名和密码,使用授权码返回应用程序,并使用此授权码、客户端 ID 和客户端密码请求资源的访问令牌。 OAuth 中是否有类似的描述?或者删除我要求用户授权的步骤正在破坏 OAuth,这将是我的实现看起来就像 OAuth?

我知道有客户端凭据流,但我必须授予应用程序对每个用户资源的访问权限吗?还是我遗漏了什么?

【问题讨论】:

    标签: authentication oauth oauth-2.0 authorization


    【解决方案1】:

    OAuth2 的真正设计目的是允许用户(资源所有者)向第三方客户端授予对其资源的访问权限。对于这些用例,给予同意是有意义的。

    现在许多授权服务器允许您配置是否显示同意页面或允许管理员同意所有用户的应用程序(管理员同意)。所以这取决于您使用的授权服务器。

    客户端凭据流使客户端本身可以访问 API(资源服务器)上的资源。 API 不会知道哪个用户正在访问资源,如果访问取决于用户是谁,例如当用户只能访问他们自己的资源或他们的访问级别取决于他们是谁时,这将不起作用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-04
      • 2016-10-15
      • 2020-03-01
      • 2016-05-23
      • 1970-01-01
      相关资源
      最近更新 更多