Indeed, recognizing that you're right that "you can't do that" with the current 
syntax, we decided to change scope to quoted-string so that it is compatible 
with HTTPbis and add the restriction that no "\" quoting may be present in the 
string (to simplify implementations).

                                -- Mike

-----Original Message-----
From: Julian Reschke [mailto:julian.resc...@gmx.de] 
Sent: Friday, October 14, 2011 9:11 AM
To: Mike Jones
Cc: OAuth WG
Subject: Re: [OAUTH-WG] draft-ietf-oauth-v2-bearer-09: Open Issues & Proposed 
Resolutions

On 2011-10-14 17:52, Julian Reschke wrote:
> On 2011-10-14 17:42, Mike Jones wrote:
>> Thanks for the useful discussion and the write-up, Hannes. For 
>> context, Hannes and I discussed how to resolve the remaining Bearer 
>> spec issues in a manner that meets the needs of implementations and 
>> will not generate objections during the IESG or IETF Last Call 
>> reviews. A few additional comments...
>>
>> 1. Error Description - Nothing to add to Hannes' write-up.
>>
>> 2. Scope - I was planning to allow a broader set of ASCII characters 
>> than the "token" set, as these characters are inadequate for the use 
>> of URIs/URLs as scope elements. In particular, scope elements need to 
>> permit the full sets of "reserved"
>> <http://tools.ietf.org/html/rfc3986#section-2.2>and "unreserved"
>> <http://tools.ietf.org/html/rfc3986#section-2.3>characters in RFC 
>> 3986 <http://tools.ietf.org/html/rfc3986>. The draft I am working on 
>> will say that scope is a space separated set of elements, where the 
>> elements consist of one or more characters from the union of the 
>> "reserved" and "unreserved" sets.
>> ...
>
> If you do that, you'll need to be careful with the encoding in case 
> you stick with x-www-url-encoded (SP -> "+" etc).

Sorry, /me confused.

Looked again at
<https://tools.ietf.org/html/draft-ietf-oauth-v2-bearer-09#section-2.4>:

    scope           = "scope" "=" <"> scope-v *( SP scope-v ) <">
    scope-v         = 1*quoted-char

    quoted-char     = ALPHA / DIGIT /
                      "!" / "#" / "$" / "%" / "&" / "'" / "(" / ")" /
                      "*" / "+" / "-" / "." / "/" / ":" / "<" / "=" /
                      ">" / "?" / "@" / "[" / "]" / "^" / "_" / "`" /
                      "{" / "|" / "}" / "~" / "\" / "," / ";"

You can't do this, as it conflicts with the syntax for quoted-string.

So the right way to do this is to say:

   scope = "scope" *SP  "=" *SP ( token / quoted-string )

and then have prose constrain the value of the param after potentially 
unescaping the quoted-string.

Best regards, Julian






_______________________________________________
OAuth mailing list
OAuth@ietf.org
https://www.ietf.org/mailman/listinfo/oauth

Reply via email to