Re: [OAUTH-WG] question about the b64token syntax in draft-ietf-oauth-v2-bearer
John Bradley <ve7jtb@ve7jtb.com> Sun, 11 March 2012 13:08 UTC
Return-Path: <ve7jtb@ve7jtb.com>
X-Original-To: oauth@ietfa.amsl.com
Delivered-To: oauth@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id DEC8E21F8546 for <oauth@ietfa.amsl.com>; Sun, 11 Mar 2012 06:08:58 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.202
X-Spam-Level:
X-Spam-Status: No, score=-2.202 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HTML_MESSAGE=0.001, MIME_QP_LONG_LINE=1.396, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Hg88Yg7+2bKb for <oauth@ietfa.amsl.com>; Sun, 11 Mar 2012 06:08:57 -0700 (PDT)
Received: from mail-vx0-f172.google.com (mail-vx0-f172.google.com [209.85.220.172]) by ietfa.amsl.com (Postfix) with ESMTP id AAB8021F854C for <oauth@ietf.org>; Sun, 11 Mar 2012 06:08:55 -0700 (PDT)
Received: by vcbfk13 with SMTP id fk13so3741942vcb.31 for <oauth@ietf.org>; Sun, 11 Mar 2012 06:08:55 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=references:in-reply-to:mime-version:content-transfer-encoding :content-type:message-id:cc:x-mailer:from:subject:date:to :x-gm-message-state; bh=CH+sXVAyNlasNORlKHwTFaQbJ8+K2Fl/JitBqMuYtbU=; b=Xx7Y4Fjx04+rkeZD+t3tEUHmXbRrgGPgxkcCuQuaFHt8Em6eavtq/Wu6MSadgDx6mu 0BObplqVv89QqAeCOiNtxmkjoC+j8zdHhJ5jkzrRqmvL0OQdobiZ0qRbmEkswh6mIfrv P36Yyq7S+X7DNYFLxfgpGXDcb319SJHjsaHAHcOetzLX3l2Wb6miG8hjOGrq1VEIID3K VkXyDGTsuULQK0i2328jQrPlHaRZtrDsH3+LVYR8uO6o1RVEQnxLOKaQAyDWl+aAgEFz B33oxB6od69G6yGcjzIt+R0uSntGMsb7wsJxK0Oc2xS1zWcmrkEmuZK+9cBB96KNvtei Ojzw==
Received: by 10.52.95.3 with SMTP id dg3mr12088400vdb.127.1331471334887; Sun, 11 Mar 2012 06:08:54 -0700 (PDT)
Received: from [10.31.18.44] (173-163-203-241-Richmond.hfc.comcastbusiness.net. [173.163.203.241]) by mx.google.com with ESMTPS id fd10sm22071005vdc.1.2012.03.11.06.08.52 (version=TLSv1/SSLv3 cipher=OTHER); Sun, 11 Mar 2012 06:08:53 -0700 (PDT)
References: <4E1F6AAD24975D4BA5B168042967394366402261@TK5EX14MBXC284.redmond.corp.microsoft.com>
In-Reply-To: <4E1F6AAD24975D4BA5B168042967394366402261@TK5EX14MBXC284.redmond.corp.microsoft.com>
Mime-Version: 1.0 (1.0)
Content-Transfer-Encoding: 7bit
Content-Type: multipart/alternative; boundary="Apple-Mail-48FFFB66-388D-47EF-B7AF-8C89EFC59DE9"
Message-Id: <6C7AC84B-F4F3-4069-9144-65B193D0F882@ve7jtb.com>
X-Mailer: iPhone Mail (9B179)
From: John Bradley <ve7jtb@ve7jtb.com>
Date: Sun, 11 Mar 2012 09:08:52 -0400
To: Mike Jones <Michael.Jones@microsoft.com>
X-Gm-Message-State: ALoCoQlX78qVharjkv03E7xw7xA8DAKqdkIDXO5b7GukFInIR7j42SOntxs0WT5r+xdygy7zYqZm
Cc: oauth <oauth@ietf.org>
Subject: Re: [OAUTH-WG] question about the b64token syntax in draft-ietf-oauth-v2-bearer
X-BeenThere: oauth@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: OAUTH WG <oauth.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/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: Sun, 11 Mar 2012 13:08:59 -0000
+1 Sent from my iPhone On 2012-03-10, at 12:49 PM, Mike Jones <Michael.Jones@microsoft.com> wrote: > I plan to make the change to the example access token value to mF_9.B5f-4.1JqM before Monday’s submission deadline, per the requests for b64token syntax clarification. I’m also considering adding an access token response example, pre the requests in this thread. I would propose adding the following new text for this in a new Section 4 (before the current Security Considerations). This is largely parallel to what is done in Section 5.1 of the MAC spec. > > 4. Example Access Token Response > > Typically a bearer token is returned to the client as part of an OAuth 2.0 [I-D.ietf-oauth-v2] access token response. An example of such as response is: > > HTTP/1.1 200 OK > Content-Type: application/json;charset=UTF-8 > Cache-Control: no-store > Pragma: no-cache > > { > "access_token":"mF_9.B5f-4.1JqM", > "token_type":"Bearer", > "expires_in":3600, > "refresh_token":"tGzv3JOkF0XG5Qx2TlKWIA" > } > > Please send either +1s or objections to this text by mid-day Monday. Unless I receive several +1s, to be conservative at this point, I will not be including it in Monday’s draft. > > -- Mike > > From: oauth-bounces@ietf.org [mailto:oauth-bounces@ietf.org] On Behalf Of Paul Madsen > Sent: Wednesday, March 07, 2012 1:34 PM > To: Brian Campbell > Cc: oauth > Subject: Re: [OAUTH-WG] question about the b64token syntax in draft-ietf-oauth-v2-bearer > > +1 > > On 3/7/12 4:08 PM, Brian Campbell wrote: > Yeah, it is case insensitive. I just went with the upper case B > because that's how it was written in §5.1.1 of > draft-ietf-oauth-v2-bearer-17* which is where I guess it's actually > defined. But I see draft-ietf-oauth-v2-23 uses a lower case b**. > Either one would be fine. > > I agree that an example response from the token endpoint would be > worthwhile. Something like the following might help tie together with > the Authorization header example (proposed earlier). It could maybe be > worked in near the top of §2? > > HTTP/1.1 200 OK > Content-Type: application/json;charset=UTF-8 > Cache-Control: no-store > Pragma: no-cache > > { > "access_token":"vF_9.5dCf-t4.qbcmT_k1b", > "token_type":"example", > "expires_in":3600, > "refresh_token":"stGzv3xOdkF0X35Qp2TlKWIA", > } > > It'd probably make sense to change the examples in the body §2.2*** > and query §2.3**** to use the same access token value too. > > > * http://tools.ietf.org/html/draft-ietf-oauth-v2-bearer-17#section-5.1.1 > ** http://tools.ietf.org/html/draft-ietf-oauth-v2-23#section-7.1 > *** http://tools.ietf.org/html/draft-ietf-oauth-v2-bearer-17#section-2.2 > **** http://tools.ietf.org/html/draft-ietf-oauth-v2-bearer-17#section-2.3 > > > On Wed, Mar 7, 2012 at 12:00 PM, Justin Richer <jricher@mitre.org> wrote: > Makes sense to me, except that I think the token_type value is typically > lowercase "bearer", though it's defined to be case insensitive in > Oauth-v2-23 section 5.1. Come to think of it, I'm not sure that the value of > this field for the Bearer token type ever got defined anywhere. Section 7.1 > references the bearer spec as defining the value of the "token_type" > parameter, and passes its example as if by reference. Would be worthwhile > giving an example of a token endpoint response, such as what's found in > OAuth-v2-23 section 5.1. > > -- Justin > > > On 03/07/2012 12:16 PM, Brian Campbell wrote: > > I'd like to propose the following changes and additions, derived > largely from Bill and James suggestions, to > draft-ietf-oauth-v2-bearer-17. These changes have no normative impact > and only aim to add additional clarity and explanation the workings > and implications of the current spec. I'm definitely open to changes > or improvements in the wording here (not my strong suit by any means) > but I think it's important that these general ideas be conveyed in the > draft. > > > ==> Insert the following text at the beginning of §2: > > To make a protected resource request, the client must be in possession > of a valid bearer token. Typically a bearer token is returned to the > client as part of an access token response as defined in OAuth 2.0 > [I-D.ietf-oauth-v2]. When the "token_type" parameter of the access > token response is "Bearer", the string value of the "access_token" > parameter becomes the bearer access token used to make protected > resource requests. > > ==> Change the value of the token in the Authorization header example to > this: > > Authorization: Bearer vF_9.5dCf-t4.qbcmT_k1b > > ==> Insert the following text before the last paragraph of §2.1: > > Note that the name b64token does not imply base64 encoding but rather > is the name for an ABNF syntax definition from HTTP/1.1, Part 7 > [I-D.ietf-httpbis-p7-auth]. Because of its use, the "access_token" > string value from an access token response MUST match the b64token > ABNF so it can be used with the Bearer HTTP scheme. > > > Thanks, > Brian > > > > > On Tue, Mar 6, 2012 at 11:45 AM, William Mills<wmills@yahoo-inc.com> > wrote: > > Yeah, something as simple as, "Note that the name 'b64token' does not > imply > base64 encoding, see the definition in [[INSERT REFERENCE HERE]]." would > do > it. > > -bill > > ________________________________ > From: Brian Campbell<bcampbell@pingidentity.com> > To: Mike Jones<Michael.Jones@microsoft.com> > Cc: oauth<oauth@ietf.org> > Sent: Tuesday, March 6, 2012 8:23 AM > > Subject: Re: [OAUTH-WG] question about the b64token syntax in > draft-ietf-oauth-v2-bearer > > Thanks Mike, I think changing the example would be helpful. > > However I think that including some text along the lines of what James > suggested would also be very valuable. I agree that the connection > between OAuth and Bearer could and should be made more explicit. And > that the implications of the b64token syntax, particularly on what AS > can use to construct ATs, could/should be made more clear. > > I can propose some specific text (building on James') if others in the WG > agree? > > > On Mon, Mar 5, 2012 at 5:32 PM, Mike Jones<Michael.Jones@microsoft.com> > wrote: > > I'm fine with changing the example to make it clearer that b64token > allows > a wider range of characters than just those legal for base64 and > base64url > encodings of data values. > > I'll add it to my to-do list for any additional edits for the Bearer > spec. > > -- Mike > > -----Original Message----- > From: oauth-bounces@ietf.org [mailto:oauth-bounces@ietf.org] On Behalf > Of > Manger, James H > Sent: Monday, March 05, 2012 3:33 PM > To: Brian Campbell; oauth > Subject: Re: [OAUTH-WG] question about the b64token syntax in > draft-ietf-oauth-v2-bearer > > Brian, > > On casual reading of "The OAuth 2.0 Authorization Protocol: Bearer > Tokens"* I've encountered several people (including myself) who have > made the assumption that the name b64token implies that some kind of > base64 encoding/decoding on the access token is taking place between > the client and RS. > > Digging a bit deeper in to "HTTP/1.1, part 7: Authentication"**, > however, I see that b64token is just an ABNF syntax definition > allowing for characters typically used in base64, base64url, etc.. So > the b64token doesn't define any encoding or decoding but rather just > defines what characters can be used in the part of the Authorization > header that will contain the access token. > > Do I read this correctly? > > Yes. > > If so, I feel like some additional clarifying text in the Bearer > Tokens draft might help avoid what is (based on my small sample) a > common point of misunderstanding. > > Changing the example bearer token should be a simple way to avoid some > confusion by showing that it does not have to be base64 encoding. How > about > changing: > Authorization: Bearer vF9dft4qmT > to > Authorization: Bearer vF9.dft4.qmT > > The Bearer spec has lots of (unnecessary) text about OAuth, but doesn't > quite manage to be precise about how OAuth and Bearer connect. It could > explicitly state that the string value of the "access_token" member of > an > access token response is the bearer token. The "access_token" string > value > (after unescaping any JSON-escapes) MUST match the b64token ABNF so it > can > be used with the Bearer HTTP scheme. Such text could be put in §5.1.1 > where > the "Bearer" OAuth access token type is defined. > > > Also, does the use of b64token implicitly limit the allowed characters > that an AS can use to construct a bearer access token? > > Yes. > > > * http://tools.ietf.org/html/draft-ietf-oauth-v2-bearer-17#section-2.1 > ** > http://tools.ietf.org/html/draft-ietf-httpbis-p7-auth-18#section-2.1 > > -- > James Manger > _______________________________________________ > 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 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 mailing list > OAuth@ietf.org > https://www.ietf.org/mailman/listinfo/oauth
- [OAUTH-WG] question about the b64token syntax in … Brian Campbell
- Re: [OAUTH-WG] question about the b64token syntax… Manger, James H
- Re: [OAUTH-WG] question about the b64token syntax… Mike Jones
- Re: [OAUTH-WG] question about the b64token syntax… Brian Campbell
- Re: [OAUTH-WG] question about the b64token syntax… Paul Madsen
- Re: [OAUTH-WG] question about the b64token syntax… Justin Richer
- Re: [OAUTH-WG] question about the b64token syntax… William Mills
- Re: [OAUTH-WG] question about the b64token syntax… Brian Campbell
- Re: [OAUTH-WG] question about the b64token syntax… William Mills
- Re: [OAUTH-WG] question about the b64token syntax… Justin Richer
- Re: [OAUTH-WG] question about the b64token syntax… Brian Campbell
- Re: [OAUTH-WG] question about the b64token syntax… Paul Madsen
- Re: [OAUTH-WG] question about the b64token syntax… Mike Jones
- Re: [OAUTH-WG] question about the b64token syntax… Manger, James H
- Re: [OAUTH-WG] question about the b64token syntax… Paul Madsen
- Re: [OAUTH-WG] question about the b64token syntax… John Bradley
- Re: [OAUTH-WG] question about the b64token syntax… Brian Campbell
- Re: [OAUTH-WG] question about the b64token syntax… Richer, Justin P.
- Re: [OAUTH-WG] question about the b64token syntax… George Fletcher