Re: [OAUTH-WG] Draft -07 (major rewrite)
Eran Hammer-Lahav <eran@hueniverse.com> Mon, 14 June 2010 16:23 UTC
Return-Path: <eran@hueniverse.com>
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 1555A3A67AA for <oauth@core3.amsl.com>; Mon, 14 Jun 2010 09:23:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.13
X-Spam-Level:
X-Spam-Status: No, score=-2.13 tagged_above=-999 required=5 tests=[AWL=0.469, BAYES_00=-2.599]
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 tqpe4B7wwqB5 for <oauth@core3.amsl.com>; Mon, 14 Jun 2010 09:23:30 -0700 (PDT)
Received: from p3plex1out02.prod.phx3.secureserver.net (p3plex1out02.prod.phx3.secureserver.net [72.167.180.18]) by core3.amsl.com (Postfix) with SMTP id F094A3A69D4 for <oauth@ietf.org>; Mon, 14 Jun 2010 09:23:29 -0700 (PDT)
Received: (qmail 23903 invoked from network); 14 Jun 2010 16:23:34 -0000
Received: from unknown (HELO smtp.ex1.secureserver.net) (72.167.180.21) by p3plex1out02.prod.phx3.secureserver.net with SMTP; 14 Jun 2010 16:23:34 -0000
Received: from P3PW5EX1MB01.EX1.SECURESERVER.NET ([10.6.135.20]) by P3PW5EX1HT003.EX1.SECURESERVER.NET ([72.167.180.21]) with mapi; Mon, 14 Jun 2010 09:23:27 -0700
From: Eran Hammer-Lahav <eran@hueniverse.com>
To: Chuck Mortimore <cmortimore@salesforce.com>
Date: Mon, 14 Jun 2010 09:23:29 -0700
Thread-Topic: [OAUTH-WG] Draft -07 (major rewrite)
Thread-Index: AcsLzsIbf0fEOoFsShCROakzDenFpQAArqtgAALzZuA=
Message-ID: <90C41DD21FB7C64BB94121FBBC2E72343B3EBB66B2@P3PW5EX1MB01.EX1.SECURESERVER.NET>
References: <C837F7DA.358C4%eran@hueniverse.com>, <1276525208.7940.7.camel@localhost.localdomain> <77AEC44D4DA08A46ADAA723286626BC1659B86D585@EXSFM-MB01.internal.salesforce.com>
In-Reply-To: <77AEC44D4DA08A46ADAA723286626BC1659B86D585@EXSFM-MB01.internal.salesforce.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Cc: OAuth WG <oauth@ietf.org>
Subject: Re: [OAUTH-WG] Draft -07 (major rewrite)
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: Mon, 14 Jun 2010 16:23:31 -0000
Why client developers? How does it make their life easier? An approach I'm more comfortable with is to redefine 'type' as the type of authorization grant provided: refresh_token, user_basic, verification_code, assertion. And if we use the name 'type', I would change the 'type' parameter on the end-user authorization endpoint to something else such as the proposed 'response_type'. Otherwise change it to 'grant_type' or something like that. EHL > -----Original Message----- > From: Chuck Mortimore [mailto:cmortimore@salesforce.com] > Sent: Monday, June 14, 2010 7:54 AM > To: Eran Hammer-Lahav > Cc: OAuth WG > Subject: RE: [OAUTH-WG] Draft -07 (major rewrite) > > +1 for the type parameter. > > Our internal server and client developers would both prefer it. > > -cmort > ________________________________________ > From: oauth-bounces@ietf.org [oauth-bounces@ietf.org] On Behalf Of > Justin Richer [jricher@mitre.org] > Sent: Monday, June 14, 2010 7:20 AM > To: Eran Hammer-Lahav > Cc: OAuth WG > Subject: Re: [OAUTH-WG] Draft -07 (major rewrite) > > I disagree. I don't think it's redundant, I think it's a clarifying piece of > information that makes it completely unambiguous what the client is > expecting to happen. On the server side, a single switch is a much simpler > and less error-prone dispatch structure than a set of "if this-and-that > parameter else if this-other parameter else if that-other-and-something-else > parameter" statements. If one of our goals of OAuth2 is easing the > implementation for developers, dropping the "type" field is a big lose. > > Also, as has already been pointed out, if a new flow comes in that wants to > use existing parameters in a different way, then it won't fit into this > framework or an extension. Decreasing ambiguity for a small price (a few > extra required characters for the auth flow) is a good thing. > > Incidentally, I agree that the refresh flow should fit in with all of the other > flows, but with "type=refresh". Maybe "type" is the wrong word for this > parameter? Because I was envisioning the rescope and revoke operations to > be similar to the refresh operation. Using HTTP DELETE is a bad idea since it > would require each token to have a URL associated with it, and you can no > longer manipulate the OAuth API with just query parameters. A > "type=revoke" call with the refresh token as authentication and the token- > to-be-revoked as parameter makes a whole lot more sense to me. It keeps > these three operations parallel to the other authorization flows -- part of the > whole "how to get a token" side of OAuth. > > -- Justin > > On Fri, 2010-06-11 at 17:25 -0400, Eran Hammer-Lahav wrote: > > It doesn't really. It is completely clear what kind of authorization > > grant the client is providing simply by looking at the parameter. It > > might make the code a few lines longer (a few if-else instead of a > > switch-case) but because these are all post parameters, you access > > them the same way (i.e. this is not a case where header information is > > moved to post body, etc.). > > > > As for the rescope and revoke operations, we still need to figure out > > how to accomplish that. For example, revoking can be done using an > > HTTP DELETE operation which is more consistent with HTTP, and > > rescoping (which is still tricky because scope can only be decreased) > > is more a function of a refresh operation (asking for a new access > > token using a refresh token and simply providing a new, lesser scope). > > > > EHL > > > > > > On 6/11/10 2:05 PM, "Justin Richer" <jricher@mitre.org> wrote: > > > > I agree with Marius: I think we should keep the explicit flow > > name in > > there (in the 'type' parameter or equivalent), as it (among > > other > > things) opens the possibility for the rescope and revoke > > operations. It > > makes it very clear how both client and server expect things > > to behave. > > > > -- Justin > > > > On Fri, 2010-06-11 at 16:47 -0400, Marius Scurtescu wrote: > > > On Fri, Jun 11, 2010 at 1:11 PM, Eran Hammer-Lahav > > <eran@hueniverse.com> wrote: > > > > Draft -07 represents a major rearrangement of the > > document. I still have a lot of work to do but wanted to share > > my progress and get some general feedback. The draft includes > > a few normative language changes but the main focus is on the > > document structure and how the architecture is explained. > > > > > > > > Changes include: > > > > > > > > o Removed device profile. > > > > o Added verification code support to user-agent flow. > > > > o Removed multiple formats support, leaving JSON as the > > only format. > > > > o Changed assertion "assertion_format" parameter to > > "assertion_type". > > > > o Removed "type" parameter from token endpoint. > > > > > > It would be really useful if each request had a unique type, > > now we > > > are back to guessing what is requested, like in WRAP. > > > > > > One small error that I noticed: section "5.1.4. Refresh > > Token" is not > > > listing client_id and client_secret as optional parameters. > > > > > > In general I found previous versions much easier to read and > > > understand, but maybe I just need more time... > > > > > > > > > Marius > > > _______________________________________________ > > > 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] Draft -07 (major rewrite) Eran Hammer-Lahav
- Re: [OAUTH-WG] Draft -07 (major rewrite) Marius Scurtescu
- Re: [OAUTH-WG] Draft -07 (major rewrite) Justin Richer
- Re: [OAUTH-WG] Draft -07 (major rewrite) Eran Hammer-Lahav
- Re: [OAUTH-WG] Draft -07 (major rewrite) Andrew Arnott
- Re: [OAUTH-WG] Draft -07 (major rewrite) Eran Hammer-Lahav
- Re: [OAUTH-WG] Draft -07 (major rewrite) Justin Richer
- Re: [OAUTH-WG] Draft -07 (major rewrite) Chuck Mortimore
- Re: [OAUTH-WG] Draft -07 (major rewrite) Eran Hammer-Lahav
- Re: [OAUTH-WG] Draft -07 (major rewrite) Eran Hammer-Lahav
- Re: [OAUTH-WG] Draft -07 (major rewrite) Christian Scholz
- Re: [OAUTH-WG] Draft -07 (major rewrite) Eran Hammer-Lahav
- Re: [OAUTH-WG] Draft -07 (major rewrite) Eran Hammer-Lahav
- Re: [OAUTH-WG] Draft -07 (major rewrite) Torsten Lodderstedt
- Re: [OAUTH-WG] Draft -07 (major rewrite) Andrew Arnott
- Re: [OAUTH-WG] Draft -07 (major rewrite) Eran Hammer-Lahav
- Re: [OAUTH-WG] Draft -07 (major rewrite) Brian Eaton
- Re: [OAUTH-WG] Draft -07 (major rewrite) Eran Hammer-Lahav
- Re: [OAUTH-WG] Draft -07 (major rewrite) Dick Hardt
- Re: [OAUTH-WG] Draft -07 (major rewrite) Dick Hardt
- Re: [OAUTH-WG] Draft -07 (major rewrite) Eran Hammer-Lahav
- Re: [OAUTH-WG] Draft -07 (major rewrite) Marius Scurtescu
- Re: [OAUTH-WG] Draft -07 (major rewrite) Eran Hammer-Lahav
- Re: [OAUTH-WG] Draft -07 (major rewrite) Marius Scurtescu
- Re: [OAUTH-WG] Draft -07 (major rewrite) Eran Hammer-Lahav
- Re: [OAUTH-WG] Draft -07 (major rewrite) Marius Scurtescu
- Re: [OAUTH-WG] Draft -07 (major rewrite) Brian Eaton