Re: [OAUTH-WG] I-D Action: draft-ietf-oauth-jwsreq-13.txt

Torsten Lodderstedt <torsten@lodderstedt.net> Fri, 31 March 2017 04:01 UTC

Return-Path: <torsten@lodderstedt.net>
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 635D112947F for <oauth@ietfa.amsl.com>; Thu, 30 Mar 2017 21:01:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level:
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 22EMmZiL11tg for <oauth@ietfa.amsl.com>; Thu, 30 Mar 2017 21:01:17 -0700 (PDT)
Received: from smtprelay06.ispgateway.de (smtprelay06.ispgateway.de [80.67.31.96]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E97EB1294E9 for <oauth@ietf.org>; Thu, 30 Mar 2017 21:01:15 -0700 (PDT)
Received: from [31.133.147.181] (helo=dhcp-93b5.meeting.ietf.org) by smtprelay06.ispgateway.de with esmtpsa (TLSv1.2:DHE-RSA-AES256-GCM-SHA384:256) (Exim 4.84) (envelope-from <torsten@lodderstedt.net>) id 1ctnkO-0006RM-Fe; Fri, 31 Mar 2017 06:01:13 +0200
Content-Type: multipart/signed; boundary="Apple-Mail=_820A6157-75FE-41BA-BB47-051D2E8E28BD"; protocol="application/pkcs7-signature"; micalg="sha1"
Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\))
From: Torsten Lodderstedt <torsten@lodderstedt.net>
X-Priority: 3
In-Reply-To: <58ddcfc3.5c2e6b0a.7b9e3.bbc6@mx.google.com>
Date: Thu, 30 Mar 2017 23:01:08 -0500
Cc: Nat Sakimura <sakimura@gmail.com>, Nat Sakimura <nat@sakimura.org>, IETF oauth WG <oauth@ietf.org>
Message-Id: <B4C58688-6933-4E46-BA80-15E5E8B38F6F@lodderstedt.net>
References: <CAANoGhJDKgqWaqhdL6TCO7RhE==h=ZmJeKbU-cuwUZwE+siHMA@mail.gmail.com> <n6swy6f6jws7vdnx4rs66ktg.1490929049898@email.android.com> <58ddcfc3.5c2e6b0a.7b9e3.bbc6@mx.google.com>
To: John Bradley <ve7jtb@ve7jtb.com>
X-Mailer: Apple Mail (2.3273)
X-Df-Sender: dG9yc3RlbkBsb2RkZXJzdGVkdC5uZXQ=
Archived-At: <https://mailarchive.ietf.org/arch/msg/oauth/R3sGxR-2IXdSnnRQvLBQyRr2Vn4>
Subject: Re: [OAUTH-WG] I-D Action: draft-ietf-oauth-jwsreq-13.txt
X-BeenThere: oauth@ietf.org
X-Mailman-Version: 2.1.22
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: <https://mailarchive.ietf.org/arch/browse/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, 31 Mar 2017 04:01:21 -0000

I had assumed using the request object is mutual exclusive to use of URI query parameters. Did I misinterpret the draft?

> Am 30.03.2017 um 22:40 schrieb John Bradley <ve7jtb@ve7jtb.com>:
> 
> It is a trade off between compatibility with Connect and possible configuration errors.
>  
> In reality it may not be compatible with Connect if the client is sending some parameters outside the object without including them in the object as a Connect client might.    You would potentially wind up dropping state or nonce without an error. 
>  
> I asked Mike and he was leaning to making it a error to send them as query parameters as that would be a clean change.
>  
> I think the choice is a bit of a grey area.
>  
> Sent from Mail <https://go.microsoft.com/fwlink/?LinkId=550986> for Windows 10
>  
> From: sakimura@gmail.com <mailto:sakimura@gmail.com>
> Sent: March 30, 2017 9:57 PM
> To: John Bradley <mailto:ve7jtb@ve7jtb.com>; Nat Sakimura <mailto:nat@sakimura.org>
> Cc: IETF oauth WG <mailto:oauth@ietf.org>
> Subject: Re: [OAUTH-WG] FW: I-D Action: draft-ietf-oauth-jwsreq-13.txt
>  
> +1
> 
> Sent from my Huawei Mobile
> 
> 
> -------- Original Message --------
> Subject: Re: [OAUTH-WG] FW: I-D Action: draft-ietf-oauth-jwsreq-13.txt
> From: John Bradley 
> To: Nat Sakimura 
> CC: IETF oauth WG 
> 
> 
> So I think we need to make the must ignore clearer for the additional paramaters on the authorization endpoint.  
>  
> On Mar 30, 2017 17:33, "Nat Sakimura" <nat@sakimura.org <mailto:nat@sakimura.org>> wrote:
> Not right now.
> 
> As of this writing, a client can still send duplicate parameters in the query but they get ignored by the servers honoring OAuth JAR. So, it is backwards compatible with OpenID Connect in that sense (OpenID Connect sends duplicate manatory RFC6749 parameters as the query parameters as well just to be compliant to RFC6749). Conversely, servers that do not support OAuth JAR will ignore request_uri etc.
> On Mar 30, 2017, at 4:47 PM, Mike Jones <Michael.Jones@microsoft.com <mailto:Michael.Jones@microsoft.com>> wrote:
> Is there a clear statement somewhere along the lines of “parameters (other than “request” or “request_uri”) are only allowed to be in the signed object if a signed object is used”?  That’s the kind of thing I was looking for and didn’t find.
>   
>                                                        -- Mike
>  <>From: John Bradley [mailto:ve7jtb@ve7jtb.com <mailto:ve7jtb@ve7jtb.com>] 
> Sent: Thursday, March 30, 2017 4:44 PM
> To: Mike Jones <Michael.Jones@microsoft.com <mailto:Michael.Jones@microsoft.com>>
> Cc: Nat Sakimura <nat@sakimura.org <mailto:nat@sakimura.org>>; IETF oauth WG <oauth@ietf.org <mailto:oauth@ietf.org>>
> Subject: RE: [OAUTH-WG] FW: I-D Action: draft-ietf-oauth-jwsreq-13.txt
>   
> The intent of the change is to only allow the paramaters to be in the signed object if a signed object is used.  
>   
> This requires State, nonce etc to be in the JWT.  Only one place to check will hopefully reduce implimentation errors.  
>   
> This also allows us to remove the caching text as we now have one JWT per request, so caching won't happen.   
>   
> John B.  
>   
>   
>   
> On Mar 30, 2017 4:36 PM, "Mike Jones" <Michael.Jones@microsoft.com <mailto:Michael.Jones@microsoft.com>> wrote:
> I *believe* the intent is that *all* parameters must be in the request object, but the spec doesn’t actually say that, as far as I can tell.  Or maybe the intent is that parameters must not be duplicated between the query parameters and the request object.
>   
> One or the other of these statements should be explicitly included in the specification.  Of course, I could have missed the statement I’m asking for in my review, in which case please let me know what I missed.
>   
>                                                        Thanks,
>                                                       -- Mike
>   <>
> From: OAuth [mailto:oauth-bounces@ietf.org <mailto:oauth-bounces@ietf.org>] On Behalf Of John Bradley
> Sent: Thursday, March 30, 2017 3:00 PM
> To: IETF OAUTH <oauth@ietf.org <mailto:oauth@ietf.org>>
> Subject: [OAUTH-WG] FW: I-D Action: draft-ietf-oauth-jwsreq-13.txt
>   
> Based on feeback from the IESG we have removed some of the optionality in the draft.
>   
> It is a shorter read than draft 12.  
>   
> John B.
>   
> Sent from Mail <https://go.microsoft.com/fwlink/?LinkId=550986> for Windows 10
>   
> From: internet-drafts@ietf.org <mailto:internet-drafts@ietf.org>
> Sent: March 30, 2017 1:38 PM
> To: i-d-announce@ietf.org <mailto:i-d-announce@ietf.org>
> Cc: oauth@ietf.org <mailto:oauth@ietf.org>
> Subject: [OAUTH-WG] I-D Action: draft-ietf-oauth-jwsreq-13.txt
>   
>   
> A New Internet-Draft is available from the on-line Internet-Drafts directories.
> This draft is a work item of the Web Authorization Protocol of the IETF.
>   
>         Title           : The OAuth 2.0 Authorization Framework: JWT Secured Authorization Request (JAR)
>         Authors         : Nat Sakimura
>                           John Bradley
>            Filename        : draft-ietf-oauth-jwsreq-13.txt
>            Pages           : 27
>            Date            : 2017-03-30
>   
> Abstract:
>    The authorization request in OAuth 2.0 described in RFC 6749 utilizes
>    query parameter serialization, which means that Authorization Request
>    parameters are encoded in the URI of the request and sent through
>   user agents such as web browsers.  While it is easy to implement, it
>    means that (a) the communication through the user agents are not
>    integrity protected and thus the parameters can be tainted, and (b)
>    the source of the communication is not authenticated.  Because of
>    these weaknesses, several attacks to the protocol have now been put
>    forward.
>   
>    This document introduces the ability to send request parameters in a
>    JSON Web Token (JWT) instead, which allows the request to be signed
>    with JSON Web Signature (JWS) and/or encrypted with JSON Web
>    Encryption (JWE) so that the integrity, source authentication and
>    confidentiality property of the Authorization Request is attained.
>    The request can be sent by value or by reference.
>   
>   
> The IETF datatracker status page for this draft is:
> https://datatracker.ietf.org/doc/draft-ietf-oauth-jwsreq/ <https://datatracker.ietf.org/doc/draft-ietf-oauth-jwsreq/>
>   
> There are also htmlized versions available at:
> https://tools.ietf.org/html/draft-ietf-oauth-jwsreq-13 <https://tools.ietf.org/html/draft-ietf-oauth-jwsreq-13>
> https://datatracker.ietf.org/doc/html/draft-ietf-oauth-jwsreq-13 <https://datatracker.ietf.org/doc/html/draft-ietf-oauth-jwsreq-13>
>   
> A diff from the previous version is available at:
> https://www.ietf.org/rfcdiff?url2=draft-ietf-oauth-jwsreq-13 <https://www.ietf.org/rfcdiff?url2=draft-ietf-oauth-jwsreq-13>
>   
>   
> Please note that it may take a couple of minutes from the time of submission
> until the htmlized version and diff are available at tools.ietf.org <http://tools.ietf.org/>.
>   
> Internet-Drafts are also available by anonymous FTP at:
> ftp://ftp.ietf.org/internet-drafts/ <ftp://ftp.ietf.org/internet-drafts/>
>   
> _______________________________________________
> OAuth mailing list
> OAuth@ietf.org <mailto:OAuth@ietf.org>
> https://www.ietf.org/mailman/listinfo/oauth <https://www.ietf.org/mailman/listinfo/oauth>
>   
>  
> _______________________________________________
> OAuth mailing list
> OAuth@ietf.org
> https://www.ietf.org/mailman/listinfo/oauth