【问题标题】:Data authorization and OAuth数据授权和 OAuth
【发布时间】:2014-07-28 17:21:44
【问题描述】:

我想知道 OAuth 中是否有办法限制用户在访问令牌后可以看到的数据。例如,在“照片共享”示例中,一个应用程序包含照片列表,而另一个应用程序想要访问照片以进行打印。用户如何指示照片打印服务应该看到照片的子集?也许我只想让打印服务看到带有 .jpg 扩展名的照片,或者特定日期之后的照片,或者带有特定“标签”的照片。可以在哪里填写其他授权要求?
我有一个 java 应用程序,我们正在使用 Spring Security OAuth2,希望我们能做到这一点。

谢谢

【问题讨论】:

    标签: security oauth-2.0 spring-security-oauth2


    【解决方案1】:

    例如,您可以为此目的使用“范围”。定义一个自定义的“范围”,您的服务的端点应该解释自定义范围并基于它进行行为。

    例如,将 'pic_jpeg' 定义为范围名称,并在 API 文档中描述范围,例如“需要 'pic_jpeg' 范围才能访问 JPEG 图片。”

    客户端应用程序将使用参数“scope=pic_jpeg scopeX scopeY”访问您的授权端点,并且您的 OAuth 2.0 授权服务器实现最终将发出一个与范围(pic_jpeg scopeX 和 scopeY)相关联的访问令牌。然后,客户端应用程序使用访问令牌访问服务的“图片”端点,因此该端点应确认访问令牌与“pic_jpeg”范围相关联,并仅在确认后才允许客户端应用程序访问 JPEG 图片。

    【讨论】:

      猜你喜欢
      • 2014-05-18
      • 1970-01-01
      • 2018-11-21
      • 2014-07-05
      • 1970-01-01
      • 2019-02-15
      • 2020-02-21
      • 2013-04-19
      • 2015-09-16
      相关资源
      最近更新 更多