2014-06-07 107 views
1

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

谢谢

回答

1

例如,您可以使用'scope'作为此目的。定义一个自定义的“作用域”,并且服务的端点应该解释自定义作用域并基于此作用。

例如,将'pic_jpeg'定义为作用域名称,并描述您的API文档中的作用域,例如访问JPEG图片需要''pic_jpeg'作用域。

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