“资源所有者”一词在OAuth v2.0规范中被定义为“能够授予对受保护资源的访问权限的实体。当资源所有者是个人时,它被称为最终用户。”
我的问题是,什么时候资源所有者不是最终用户?我希望通过实例来解释,这些例子可能是真实的用例。例如,如果受保护的资源是Facebook用户的照片,那么资源所有者Facebook还是上传照片的Facebook用户?此外,如果资源所有者甚至不是实现OAuth的应用程序的用户,为什么该资源所有者(也是person)被视为最终用户?如果Facebook用户是资源所有者,那么Facebook在这个交换中扮演什么角色?
发布于 2011-06-20 23:20:15
资源所有者可以是一台机器,而不仅仅是人。在许多情况下,没有人参与整个OAuth流,特别是在企业设置中。至少,这就是我在RFC 5849 (后来在OAuth 2.0中)引入这个术语时的意思。
发布于 2011-06-17 19:41:13
考虑资源所有者是一个公司的情况,可能是一个具有启用/禁用对资源访问的策略的公司。
举一个艺术的例子;假设你想让你的住所看起来更像一件艺术品;有几个地方你可以去(例如,Costco),在那里你可以选择一件艺术品,在你选择的媒介上印上你选择的大小,然后送到你的家里。
事情是这样的;Costco并不是那件艺术品的版权所有者,这不在他们的业务范围之内。他们卖东西,不收集艺术品。他们所做的是与内容所有者(艺术许可的所有者)协商在印刷品中使用该艺术的权利,然后他们创建并交付给你。你支付Costco的艺术作品,然后Costco支付许可人的一部分他们的付款,从你的权利使用该艺术品。
这也适用于您已经与资源所有者建立了关系的情况;例如,您已经协商并购买了一些音乐的版权。你不是音乐的所有者,因为你没有转售音乐的权利;但是你有听音乐的权利(这是标准的DRM情况)。现在,假设您想通过一个网站播放该音乐;您可以向该网站请求该音乐;该网站可以与内容所有者(许可方,但实际上是相同的)联系您的标识;然后内容所有者可以根据您的条款决定是否允许您访问该网站的内容。
希望这能澄清一些事情。
发布于 2011-06-09 15:25:29
假设你有一个Facebook应用程序。
现在,您希望获得所有用户活动的统计信息(换句话说,“Insight”)。
在本例中,资源("App“)属于应用程序,而不是每个用户。
因此,您的应用程序获得了一个客户端访问令牌(称为2腿OAuth),并访问了它的见解。
Facebook还提供“页面洞察”作为页面的粉丝活动的资源。在这种情况下,资源是由一个页面所拥有,而不是由页面的粉丝拥有,所以您的应用程序将获得页面的访问令牌。
不过,我能理解你的困惑。
以前,Facebook允许使用页面所有者的访问令牌或页面的访问令牌访问页面洞察力。(这意味着Facebook将其作为页面所有者和页面所有者的资源处理;现在只允许页面的访问令牌)
最后,在所有情况下,Facebook充当“授权服务器”和“资源服务器”。它对用户进行身份验证,并获得对其资源的客户端访问权限的批准。(授权服务器)它也为资源服务。(资源服务器)
https://stackoverflow.com/questions/6269376
复制相似问题