Re: [OAUTH-WG] Scope :: Was: Extensibility for OAuth?
Justin Richer <jricher@mitre.org> Fri, 25 June 2010 14:26 UTC
Return-Path: <jricher@mitre.org>
X-Original-To: oauth@core3.amsl.com
Delivered-To: oauth@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id DDA683A699F for <oauth@core3.amsl.com>; Fri, 25 Jun 2010 07:26:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.807
X-Spam-Level:
X-Spam-Status: No, score=-5.807 tagged_above=-999 required=5 tests=[AWL=0.792, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Yp3KrrJPctio for <oauth@core3.amsl.com>; Fri, 25 Jun 2010 07:26:43 -0700 (PDT)
Received: from smtp-bedford.mitre.org (smtp-bedford.mitre.org [129.83.20.191]) by core3.amsl.com (Postfix) with ESMTP id E4B8B3A697A for <oauth@ietf.org>; Fri, 25 Jun 2010 07:26:42 -0700 (PDT)
Received: from smtp-bedford.mitre.org (localhost.localdomain [127.0.0.1]) by smtp-bedford.mitre.org (8.13.1/8.13.1) with ESMTP id o5PEQpLr032516 for <oauth@ietf.org>; Fri, 25 Jun 2010 10:26:51 -0400
Received: from imchub1.MITRE.ORG (imchub1.mitre.org [129.83.29.73]) by smtp-bedford.mitre.org (8.13.1/8.13.1) with ESMTP id o5PEQplk032511; Fri, 25 Jun 2010 10:26:51 -0400
Received: from [129.83.50.65] (129.83.50.65) by imchub1.MITRE.ORG (129.83.29.73) with Microsoft SMTP Server id 8.2.254.0; Fri, 25 Jun 2010 10:26:50 -0400
From: Justin Richer <jricher@mitre.org>
To: "Tschofenig, Hannes (NSN - FI/Espoo)" <hannes.tschofenig@nsn.com>
In-Reply-To: <3D3C75174CB95F42AD6BCC56E5555B450286986B@FIESEXC015.nsn-intra.net>
References: <3D3C75174CB95F42AD6BCC56E5555B4502BE07CC@FIESEXC015.nsn-intra.net> <E7A7F197-3BBC-43F2-8242-D0164057A39A@gmail.com> <AANLkTild51WHVcXxYFCygL8sGSGiN3HILDFwIbym6Lfi@mail.gmail.com> <3D3C75174CB95F42AD6BCC56E5555B4502869858@FIESEXC015.nsn-intra.net> <012AB2B223CB3F4BB846962876F47217059B663D@SNV-EXVS08.ds.corp.yahoo.com> <3D3C75174CB95F42AD6BCC56E5555B450286986B@FIESEXC015.nsn-intra.net>
Content-Type: text/plain; charset="UTF-8"
Date: Fri, 25 Jun 2010 10:26:50 -0400
Message-ID: <1277476010.28743.55.camel@localhost.localdomain>
MIME-Version: 1.0
X-Mailer: Evolution 2.28.3
Content-Transfer-Encoding: 7bit
Cc: OAuth WG <oauth@ietf.org>
Subject: Re: [OAUTH-WG] Scope :: Was: Extensibility for OAuth?
X-BeenThere: oauth@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: OAUTH WG <oauth.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/oauth>, <mailto:oauth-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/oauth>
List-Post: <mailto:oauth@ietf.org>
List-Help: <mailto:oauth-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/oauth>, <mailto:oauth-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 25 Jun 2010 14:26:45 -0000
I don't agree: these values are still opaque to OAuth. They're not
opaque to the client and server, they're part of the API. But the client
-- and by "client" here I mean the whole client application, not just
the OAuth client -- needs to know what they're for. In the same fashion,
the client needs to know where to send the tokens to get user photos.
What's more important is that the functionality around the OAuth
transaction be transparent to any OAuth implementation or library. I
should be able to build a Facebook client on top of any compliant OAuth
library. Well, once Facebook is compliant of course. ;) But that client
should be able to call oauthReq.setScopes("user_photos", "user_videos",
"publish_stream") from a library and have it passed through the system
as expected.
-- Justin
On Fri, 2010-06-25 at 03:59 -0400, Tschofenig, Hannes (NSN - FI/Espoo)
wrote:
> Dick pointed me to the Facebook API on how scope is used.
> The main page is here:
> http://developers.facebook.com/docs/authentication/
>
> It describes the basic functionality and also lists an example:
>
> "
> https://graph.facebook.com/oauth/authorize?
> client_id=...&
> redirect_uri=http://www.example.com/callback&
> scope=user_photos,user_videos,publish_stream
> "
>
> The values of the scope parameter are then explained here:
> http://developers.facebook.com/docs/authentication/permissions
>
> Example: user_photos ... Provides access to the photos the user has uploaded
>
> I think it provides a good example that the scope values are not opaque.
> Opaque (in this context) means that only the entity creating it needs to understand it and nobody else. Here the client needs to understand and set them.
>
> However, one could argue that the scope values are already bound to the specific entity the client requests to obtain the assertion from. In this specific case it would be "https://graph.facebook.com".
>
> To respond to the statement Dick made about having standardized values later there would still be the need to decide about the structure of the values now. One possibility is to just add a prefix for standardized values that are not allowed to be used in other cases, such as "std:".
>
> Ciao
> Hannes
>
>
> > -----Original Message-----
> > From: ext William Mills [mailto:wmills@yahoo-inc.com]
> > Sent: Thursday, June 24, 2010 8:15 PM
> > To: Tschofenig, Hannes (NSN - FI/Espoo); ext Lukas
> > Rosenstock; Dick Hardt
> > Cc: OAuth WG
> > Subject: RE: [OAUTH-WG] Scope :: Was: Extensibility for OAuth?
> >
> > I'm in favor of having a spaces separated list of tokens.
> > The only case I can think of where the client needs to handle
> > the scope as anything other than opaque is when it is
> > accessing multiple services. To reduce the numebr of login
> > events the client will have to poll all the endpoints it
> > wants to access and get all the scopes advertized by them and
> > submit them all, and once it has them it needs to submit all
> > of them in it's auth request, so we need something that's
> > easy for the client to put together.
> >
> >
> > -bill
> >
> > > -----Original Message-----
> > > From: oauth-bounces@ietf.org [mailto:oauth-bounces@ietf.org]
> > > On Behalf Of Tschofenig, Hannes (NSN - FI/Espoo)
> > > Sent: Thursday, June 24, 2010 3:58 AM
> > > To: ext Lukas Rosenstock; Dick Hardt
> > > Cc: OAuth WG
> > > Subject: Re: [OAUTH-WG] Scope :: Was: Extensibility for OAuth?
> > >
> > > The question is whether one would ever want to have a
> > > standardized semantic for the scope parameter.
> > > If the answer to that question is "no" then it does not
> > > matter what the format is. It can well be a list of
> > > space-delimited strings (as it is currently defined).
> > >
> > > An evironment specific semantic works well in cases where
> > > entity X sets the value and later it receives the value
> > > again. Only entity X needs to understand what it means.
> > >
> > > In some environments the use case is slightly different,
> > > namely entity X and entity Y are from the same organization
> > > and agree on the semantic. Usage of OAuth within an
> > > enterprise might be such a case.
> > >
> > > Now, the usage of the scope parameter is, however, a bit
> > > different in the spec. Section 4, for example, describes how
> > > a client obtains an access token. How does the client know
> > > what scope parameters to set and what the semantic is?
> > >
> > > Ciao
> > > Hannes
> > >
> > > > -----Original Message-----
> > > > From: ext Lukas Rosenstock [mailto:lr@lukasrosenstock.net]
> > > > Sent: Thursday, June 24, 2010 10:49 AM
> > > > To: Dick Hardt
> > > > Cc: Tschofenig, Hannes (NSN - FI/Espoo); OAuth WG
> > > > Subject: Re: [OAUTH-WG] Scope :: Was: Extensibility for OAuth?
> > > >
> > > > Wasn't there some concensus that URIs would be good for
> > scope? They
> > > > have "in-built namespacing" ...
> > > >
> > > > Lukas
> > > >
> > > > 2010/6/23 Dick Hardt <dick.hardt@gmail.com>:
> > > > >
> > > > > On 2010-06-22, at 11:07 PM, Tschofenig, Hannes (NSN -
> > > > FI/Espoo) wrote:
> > > > >
> > > > >> "
> > > > >> scope
> > > > >> OPTIONAL. The scope of the access request
> > > > expressed as a list
> > > > >> of space-delimited strings. The value of the
> > > > "scope" parameter
> > > > >> is defined by the authorization server. If the
> > > > value contains
> > > > >> multiple space-delimited strings, their order does
> > > > not matter,
> > > > >> and each string adds an additional access range to the
> > > > >> requested scope.
> > > > >> "
> > > > >>
> > > > >> Do folks think it would be useful to have standardized values?
> > > > >
> > > > > Not at this time. The semantics of scope are all over the
> > > > place. If standardized, people will feel they need to pick
> > > one that is
> > > > close to what they want, but is not exactly what they mean.
> > > I think it
> > > > is better for the AS to define what they mean by a scope
> > > and give it a
> > > > name that makes sense in that context.
> > > > >
> > > > >>
> > > > >> If the answer is "yes", then it would be useful to
> > > > differentiate the
> > > > >> standardized values from those values that are purely
> > > > defined locally by
> > > > >> the authorization server.
> > > >
> > > _______________________________________________
> > > OAuth mailing list
> > > OAuth@ietf.org
> > > https://www.ietf.org/mailman/listinfo/oauth
> > >
> >
> _______________________________________________
> OAuth mailing list
> OAuth@ietf.org
> https://www.ietf.org/mailman/listinfo/oauth
- [OAUTH-WG] Extensibility for OAuth? Tschofenig, Hannes (NSN - FI/Espoo)
- Re: [OAUTH-WG] Scope :: Was: Extensibility for OA… William Mills
- [OAUTH-WG] Scope :: Was: Extensibility for OAuth? Dick Hardt
- Re: [OAUTH-WG] Extensibility for OAuth? Thomas Hardjono
- Re: [OAUTH-WG] Scope :: Was: Extensibility for OA… Lukas Rosenstock
- Re: [OAUTH-WG] Scope :: Was: Extensibility for OA… Tschofenig, Hannes (NSN - FI/Espoo)
- Re: [OAUTH-WG] Scope :: Was: Extensibility for OA… Justin Richer
- Re: [OAUTH-WG] Scope :: Was: Extensibility for OA… Dick Hardt
- Re: [OAUTH-WG] Scope :: Was: Extensibility for OA… Tschofenig, Hannes (NSN - FI/Espoo)
- Re: [OAUTH-WG] Scope :: Was: Extensibility for OA… Justin Richer
- Re: [OAUTH-WG] Scope :: Was: Extensibility for OA… Blaine Cook
- Re: [OAUTH-WG] Scope :: Was: Extensibility for OA… Dick Hardt
- Re: [OAUTH-WG] Scope :: Was: Extensibility for OA… Dick Hardt
- Re: [OAUTH-WG] Scope :: Was: Extensibility for OA… Luke Shepard
- Re: [OAUTH-WG] Extensibility for OAuth? Eran Hammer-Lahav
- Re: [OAUTH-WG] Scope :: Was: Extensibility for OA… Eran Hammer-Lahav
- Re: [OAUTH-WG] Extensibility for OAuth? Dick Hardt
- Re: [OAUTH-WG] Scope :: Was: Extensibility for OA… Eran Hammer-Lahav
- Re: [OAUTH-WG] Extensibility for OAuth? Eran Hammer-Lahav
- Re: [OAUTH-WG] Scope :: Was: Extensibility for OA… Dick Hardt
- Re: [OAUTH-WG] Scope :: Was: Extensibility for OA… Eran Hammer-Lahav
- Re: [OAUTH-WG] Extensibility for OAuth? Dick Hardt
- Re: [OAUTH-WG] Extensibility for OAuth? Eran Hammer-Lahav
- Re: [OAUTH-WG] Scope :: Was: Extensibility for OA… Justin Hart