Re: [OAUTH-WG] Issue: Split the authorization endpoint into two endpoints

David Recordon <recordond@gmail.com> Thu, 15 April 2010 18:48 UTC

Return-Path: <recordond@gmail.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 CCA193A68D4 for <oauth@core3.amsl.com>; Thu, 15 Apr 2010 11:48:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[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 naxbFr6JpY5x for <oauth@core3.amsl.com>; Thu, 15 Apr 2010 11:48:01 -0700 (PDT)
Received: from mail-iw0-f191.google.com (mail-iw0-f191.google.com [209.85.223.191]) by core3.amsl.com (Postfix) with ESMTP id D41D03A6895 for <oauth@ietf.org>; Thu, 15 Apr 2010 11:48:01 -0700 (PDT)
Received: by iwn29 with SMTP id 29so751780iwn.17 for <oauth@ietf.org>; Thu, 15 Apr 2010 11:47:52 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:received:message-id:subject:from:to:cc:content-type; bh=rAANQChs4NNC281c1XeZOj49OGXO+B6tj0CqjNRpXzY=; b=YbevbIoIwC90ZpqdZh0SNRcMod22syG7U7tqyHywX8Gw9w4Ljg5X14wldBNTmvVu2I GiUQ4qBYFFMKABtLdTREaM4mtIBl2s59DYkxf1g/MF7mUSy6DzFILJl3F/YfUIqZaGS/ CDZfij8LjcL477CkdZhsOoe6BXrabLhYmRxJ8=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=dio/brSF46DsU2pZ2RbcdxbX/Vg/fy33a2tFyVmKXbQhyz2WzBlmygsnNWG9GBKGLD Ku207cIvDuxNXdQPS/BNKcE8j3xMIYMaxj+GDFEIHliFJJh0Fu8s7QqbxHSjZ5GD1TJu tV2dGNowMGlNkJzKtSXPh+TOIBuDCAv8CufFQ=
MIME-Version: 1.0
Received: by 10.231.182.196 with HTTP; Thu, 15 Apr 2010 11:47:52 -0700 (PDT)
In-Reply-To: <C7ECABE0.32344%eran@hueniverse.com>
References: <C7ECABE0.32344%eran@hueniverse.com>
Date: Thu, 15 Apr 2010 11:47:52 -0700
Received: by 10.231.60.19 with SMTP id n19mr188100ibh.79.1271357272716; Thu, 15 Apr 2010 11:47:52 -0700 (PDT)
Message-ID: <k2ufd6741651004151147ve61fd503g70a5a133921220aa@mail.gmail.com>
From: David Recordon <recordond@gmail.com>
To: Eran Hammer-Lahav <eran@hueniverse.com>
Content-Type: text/plain; charset="ISO-8859-1"
Cc: OAuth WG <oauth@ietf.org>
Subject: Re: [OAUTH-WG] Issue: Split the authorization endpoint into two endpoints
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: Thu, 15 Apr 2010 18:48:02 -0000

Strongly for keeping one endpoint given that the spec uses type
extensively. A huge motivator in the 2.0 effort is simplicity for
client developers.


On Thu, Apr 15, 2010 at 11:41 AM, Eran Hammer-Lahav <eran@hueniverse.com> wrote:
> OAuth 2.0 defines a single authorization endpoint with a 'type' parameter
> for the various flows and flow steps. There are two types of calls made to
> the authorization endpoint:
>
> - Requests for Access - requests in which an end user interacts with the
> authorization server, granting client access.
>
> - Requests for Token - requests in which the client uses a verification code
> or other credentials to obtain an access token. These requests require
> SSL/TLS because they always result in the transmission of plaintext
> credentials in the response and sometimes in the request.
>
> A proposal has been made to define two separate endpoints due to the
> different nature of these endpoints:
>
> On 4/6/10 4:06 PM, "Marius Scurtescu" <mscurtescu@google.com> wrote:
>
>> Constraints for endpoints:
>> access token URL: HTTPS and POST only, no user
>> user authentication URL: HTTP or HTTPS, GET or POST, authenticated user
>>
>> In many cases the above constraints can be enforced with configuration
>> that sits in front of the controllers implementing these endpoints.
>> For example, Apache config can enforce SSL and POST. Same can be done
>> in a Java filter. Also a Java filter can enforce that only
>> authenticated users hit the endpoint, it can redirect to a login page
>> if needed.
>>
>> By keeping two different endpoints all of the above is much simpler.
>> Nothing prevents an authz server to collapse these two into one
>> endpoint.
>
> While requests for access do not require HTTPS, they should because they
> involve authenticating the end user. As for enforcing HTTP methods (GET,
> POST), this is simple to do both at the server configuration level or
> application level.
>
> On the other hand, having a single endpoint makes the specification simpler,
> and more importantly, makes discovery trivial as a 401 response needs to
> include a single endpoint for obtaining a token regardless of the flow (some
> flows use one, others two steps).
>
> A richer discovery later can use LRDD on the single authorization endpoint
> to obtain an XRD describing the flows and UI options provided by the server.
> But this is outside our scope.
>
> Proposal: No change. Keep the single authorization endpoint and require
> HTTPS for all requests.
>
> EHL
>
>
>
>
>
> _______________________________________________
> OAuth mailing list
> OAuth@ietf.org
> https://www.ietf.org/mailman/listinfo/oauth
>