Re: [OAUTH-WG] Cache-Control headers for Bearer URI Query Parameter method

Mike Jones <Michael.Jones@microsoft.com> Fri, 08 June 2012 22:20 UTC

Return-Path: <Michael.Jones@microsoft.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 F399B11E8171 for <oauth@ietfa.amsl.com>; Fri, 8 Jun 2012 15:20:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.745
X-Spam-Level:
X-Spam-Status: No, score=-3.745 tagged_above=-999 required=5 tests=[AWL=-0.147, BAYES_00=-2.599, HTML_MESSAGE=0.001, 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 AVvinjWrK8Ib for <oauth@ietfa.amsl.com>; Fri, 8 Jun 2012 15:20:24 -0700 (PDT)
Received: from ch1outboundpool.messaging.microsoft.com (ch1ehsobe006.messaging.microsoft.com [216.32.181.186]) by ietfa.amsl.com (Postfix) with ESMTP id 783DF11E813E for <oauth@ietf.org>; Fri, 8 Jun 2012 15:20:23 -0700 (PDT)
Received: from mail6-ch1-R.bigfish.com (10.43.68.246) by CH1EHSOBE017.bigfish.com (10.43.70.67) with Microsoft SMTP Server id 14.1.225.23; Fri, 8 Jun 2012 22:19:31 +0000
Received: from mail6-ch1 (localhost [127.0.0.1]) by mail6-ch1-R.bigfish.com (Postfix) with ESMTP id 54ACA1E0114; Fri, 8 Jun 2012 22:19:31 +0000 (UTC)
X-Forefront-Antispam-Report: CIP:131.107.125.8; KIP:(null); UIP:(null); IPV:NLI; H:TK5EX14HUBC105.redmond.corp.microsoft.com; RD:none; EFVD:NLI
X-SpamScore: -36
X-BigFish: VS-36(zzbb2dI98dI9371I936eIc85fh542Mdf9M1432I111aIzz1202hzz1033IL8275bh8275dhz2fh2a8h668h839hd25hf0ah)
Received-SPF: pass (mail6-ch1: domain of microsoft.com designates 131.107.125.8 as permitted sender) client-ip=131.107.125.8; envelope-from=Michael.Jones@microsoft.com; helo=TK5EX14HUBC105.redmond.corp.microsoft.com ; icrosoft.com ;
Received: from mail6-ch1 (localhost.localdomain [127.0.0.1]) by mail6-ch1 (MessageSwitch) id 1339193969814804_19295; Fri, 8 Jun 2012 22:19:29 +0000 (UTC)
Received: from CH1EHSMHS030.bigfish.com (snatpool1.int.messaging.microsoft.com [10.43.68.245]) by mail6-ch1.bigfish.com (Postfix) with ESMTP id C4A86140217; Fri, 8 Jun 2012 22:19:29 +0000 (UTC)
Received: from TK5EX14HUBC105.redmond.corp.microsoft.com (131.107.125.8) by CH1EHSMHS030.bigfish.com (10.43.70.30) with Microsoft SMTP Server (TLS) id 14.1.225.23; Fri, 8 Jun 2012 22:19:29 +0000
Received: from TK5EX14MBXC284.redmond.corp.microsoft.com ([169.254.1.189]) by TK5EX14HUBC105.redmond.corp.microsoft.com ([157.54.80.48]) with mapi id 14.02.0309.003; Fri, 8 Jun 2012 22:20:17 +0000
From: Mike Jones <Michael.Jones@microsoft.com>
To: Amos Jeffries <squid3@treenet.co.nz>
Thread-Topic: [OAUTH-WG] Cache-Control headers for Bearer URI Query Parameter method
Thread-Index: Ac1FxOD3z7MhZ6PpSMarx0E+SAch6Q==
Date: Fri, 08 Jun 2012 22:20:16 +0000
Message-ID: <4E1F6AAD24975D4BA5B16804296739436652FBFC@TK5EX14MBXC284.redmond.corp.microsoft.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [157.54.51.37]
Content-Type: multipart/alternative; boundary="_000_4E1F6AAD24975D4BA5B16804296739436652FBFCTK5EX14MBXC284r_"
MIME-Version: 1.0
X-OriginatorOrg: microsoft.com
Cc: "oauth@ietf.org" <oauth@ietf.org>
Subject: Re: [OAUTH-WG] Cache-Control headers for Bearer URI Query Parameter method
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: Fri, 08 Jun 2012 22:20:28 -0000

Hi Amos,


The OAuth Bearer specification now includes the Cache-Control language we'd discussed.



See the fifth paragraph of http://tools.ietf.org/html/draft-ietf-oauth-v2-bearer-20#section-2.3.



                                                            Thanks again,

                                                            -- Mike


From: oauth-bounces@ietf.org [mailto:oauth-bounces@ietf.org] On Behalf Of Mike Jones
Sent: Thursday, May 17, 2012 3:12 PM
To: oauth@ietf.org
Subject: [OAUTH-WG] Cache-Control headers for Bearer URI Query Parameter method


Dear working group members:



I'm going through the remaining open issues that have been raised about the Bearer spec so as to be ready to publish an updated draft once the outstanding consensus call issues are resolved.



Amos Jeffries had cited this requirement in the HTTPbis spec ( http://tools.ietf.org/html/draft-ietf-httpbis-p7-auth-19#section-2.3.1):



   o  The credentials carried in an Authorization header field are

      specific to the User Agent, and therefore have the same effect on

      HTTP caches as the "private" Cache-Control response directive,

      within the scope of the request they appear in.



      Therefore, new authentication schemes which choose not to carry

      credentials in the Authorization header (e.g., using a newly

      defined header) will need to explicitly disallow caching, by

      mandating the use of either Cache-Control request directives

      (e.g., "no-store") or response directives (e.g., "private").



I propose to add the following text in order to satisfy this requirement.  I have changed Amos' MUSTs to SHOULDs because, in practice, applications that have no option but to use the URI Query Parameter method are likely to also not have control over the request's Cache-Control directives (just as they do not have the ability to use an "Authorization: Bearer" header value):



    Clients using the URI Query Parameter method SHOULD also send a

    Cache-Control header containing the "no-store" option.  Server success

    (2XX status) responses to these requests SHOULD contain a Cache-Control

    header with the "private" option.



Comments?



                                                                -- Mike



-----Original Message-----
From: Amos Jeffries [mailto:squid3@treenet.co.nz]<mailto:[mailto:squid3@treenet.co.nz]>
Sent: Monday, April 23, 2012 10:13 PM
To: Mike Jones
Cc: oauth@ietf.org<mailto:oauth@ietf.org>
Subject: Re: [OAUTH-WG] I-D Action: draft-ietf-oauth-v2-bearer-19.txt



On 24/04/2012 4:33 p.m., Mike Jones wrote:

> What specific language would you suggest be added to what section(s)?

>

>                                                             -- Mike





Perhapse the last paragraph appended:

"



    Because of the security weaknesses associated with the URI method

    (see Section 5), including the high likelihood that the URL

    containing the access token will be logged, it SHOULD NOT be used

    unless it is impossible to transport the access token in the

    "Authorization" request header field or the HTTP request entity-body.

    Resource servers compliant with this specification MAY support this

    method.



    Clients requesting URL containing the access token MUST also send a

    Cache-Control header containing the "no-store" option. Server success

    (2xx status) responses to these requests MUST contain a Cache-Control

    header with the "private" option.



"



I'm a little suspicious that the "SHOUDL NOT" in that top paragraph likely should be a MUST NOT to further discourage needless use.





AYJ





>

> -----Original Message-----

> From: oauth-bounces@ietf.org<mailto:oauth-bounces@ietf.org> On Behalf Of Amos Jeffries

> Sent: Monday, April 23, 2012 7:10 PM

> To: oauth@ietf.org<mailto:oauth@ietf.org>

> Subject: Re: [OAUTH-WG] I-D Action: draft-ietf-oauth-v2-bearer-19.txt

>

> On 24.04.2012 13:46, internet-drafts@ietf.org<mailto:internet-drafts@ietf.org> wrote:

>> A New Internet-Draft is available from the on-line Internet-Drafts

>> directories. This draft is a work item of the Web Authorization

>> Protocol Working Group of the IETF.

>>

>>           Title           : The OAuth 2.0 Authorization Protocol: Bearer

>> Tokens

>>           Author(s)       : Michael B. Jones

>>                            Dick Hardt

>>                            David Recordon

>>           Filename        : draft-ietf-oauth-v2-bearer-19.txt

>>           Pages           : 24

>>           Date            : 2012-04-23

>>

>>     This specification describes how to use bearer tokens in HTTP

>>     requests to access OAuth 2.0 protected resources.  Any party in

>>     possession of a bearer token (a "bearer") can use it to get

>> access to

>>     the associated resources (without demonstrating possession of a

>>     cryptographic key).  To prevent misuse, bearer tokens need to be

>>     protected from disclosure in storage and in transport.

>>

>>

>> A URL for this Internet-Draft is:

>> http://www.ietf.org/internet-drafts/draft-ietf-oauth-v2-bearer-19.txt

>

>

> The section 2.3 (URL Query Parameter) text is still lacking explicit and specific security requirements. The overarching TLS requirement is good in general, but insufficient in the presence of HTTP intermediaries on the TLS connection path as is becoming a common practice.

>

> The upcoming HTTPbis specs document this issue as a requirement for new auth schemes such as Bearer:

>

> http://tools.ietf.org/html/draft-ietf-httpbis-p7-auth-19#section-2.3.1

> "

>         Therefore, new authentication schemes which choose not to carry

>         credentials in the Authorization header (e.g., using a newly

>         defined header) will need to explicitly disallow caching, by

>         mandating the use of either Cache-Control request directives

>         (e.g., "no-store") or response directives (e.g., "private").

> "

>

>

> AYJ

>

> _______________________________________________

> OAuth mailing list

> OAuth@ietf.org<mailto:OAuth@ietf.org>

> https://www.ietf.org/mailman/listinfo/oauth

>

>