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

"Manger, James H" <James.H.Manger@team.telstra.com> Sat, 17 April 2010 04:52 UTC

Return-Path: <James.H.Manger@team.telstra.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 695DB3A6AE8 for <oauth@core3.amsl.com>; Fri, 16 Apr 2010 21:52:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.197
X-Spam-Level:
X-Spam-Status: No, score=-0.197 tagged_above=-999 required=5 tests=[AWL=0.703, BAYES_00=-2.599, HELO_EQ_AU=0.377, HOST_EQ_AU=0.327, HTML_MESSAGE=0.001, RELAY_IS_203=0.994]
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 9ehF0LN1aQzc for <oauth@core3.amsl.com>; Fri, 16 Apr 2010 21:52:42 -0700 (PDT)
Received: from ipxano.tcif.telstra.com.au (ipxano.tcif.telstra.com.au [203.35.82.200]) by core3.amsl.com (Postfix) with ESMTP id A71EA3A6AEA for <oauth@ietf.org>; Fri, 16 Apr 2010 21:52:38 -0700 (PDT)
X-IronPort-AV: E=Sophos;i="4.52,225,1270389600"; d="scan'208,217";a="1413030"
Received: from unknown (HELO ipcani.tcif.telstra.com.au) ([10.97.216.200]) by ipoani.tcif.telstra.com.au with ESMTP; 17 Apr 2010 14:52:30 +1000
X-IronPort-AV: E=McAfee;i="5400,1158,5953"; a="1125907"
Received: from wsmsg3755.srv.dir.telstra.com ([172.49.40.196]) by ipcani.tcif.telstra.com.au with ESMTP; 17 Apr 2010 14:52:30 +1000
Received: from WSMSG3153V.srv.dir.telstra.com ([172.49.40.159]) by WSMSG3755.srv.dir.telstra.com ([172.49.40.196]) with mapi; Sat, 17 Apr 2010 14:52:29 +1000
From: "Manger, James H" <James.H.Manger@team.telstra.com>
To: Eran Hammer-Lahav <eran@hueniverse.com>, OAuth WG <oauth@ietf.org>
Date: Sat, 17 Apr 2010 14:52:28 +1000
Thread-Topic: [OAUTH-WG] Issue: Split the authorization endpoint into two endpoints
Thread-Index: AcrdCitsLp+WWglvQMKPMWBhihZtKQAezmZQABLw0xAAAiYJ4AAC9C3Q
Message-ID: <255B9BB34FB7D647A506DC292726F6E11257592327@WSMSG3153V.srv.dir.telstra.com>
References: <255B9BB34FB7D647A506DC292726F6E11257592315@WSMSG3153V.srv.dir.telstra.com> <C7EE71B8.32459%eran@hueniverse.com>
In-Reply-To: <C7EE71B8.32459%eran@hueniverse.com>
Accept-Language: en-US, en-AU
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US, en-AU
Content-Type: multipart/alternative; boundary="_000_255B9BB34FB7D647A506DC292726F6E11257592327WSMSG3153Vsrv_"
MIME-Version: 1.0
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: Sat, 17 Apr 2010 04:52:43 -0000

> This has nothing to do with it. There is no PUT and DELETE or POST with non-form body when *requesting a token*.



It is relevant.

I don’t want to authenticate direct client requests *only* when they *request a token*.

Clients might make any variety of direct requests unrelated to OAuth.

There might even be other OAuth-related requests from clients to an authorization server in future (eg get meta data, or delete a token; even refreshing a token might be better as a GET).

I want to be able to use the same client auth mechanism, and same client credentials, for all these calls.

Some of these calls might be PUTs, DELETEs, non-form POSTs, GETs etc. even if requesting (& refreshing) a token is always a form POST.

Hence client_secret as a POST parameter when requesting a token is a poor design.





It should be perfectly valid (and not uncommon I expect) for a service to support OAuth for user delegation, but not use OAuth for making all direct client calls token-based — these address quite different issues.

Other services might use short-term refreshable tokens when clients (on their own behalf) access less trusted “content” service, but will use “normal” auth when clients talk to the trusted account/authorization system.



--

James Manger



From: Eran Hammer-Lahav [mailto:eran@hueniverse.com]
Sent: Saturday, 17 April 2010 12:58 PM
To: Manger, James H; Luke Shepard; John Kemp
Cc: OAuth WG
Subject: Re: [OAUTH-WG] Issue: Split the authorization endpoint into two endpoints



This has nothing to do with it. There is no PUT and DELETE or POST with non-form body when *requesting a token*.

We need to do a better job not to confuse accessing protected resources with the flow calls. They are completely different.

EHL


On 4/16/10 7:02 PM, "James Manger" <James.H.Manger@team.telstra.com> wrote:

>> In either case, we should not restrict the access token URL to POST-only.
>> A GET request is just as secure and can be much easier to write code for

> If you are using GET, then refresh tokens and client secrets will end
> up side by side in web server log files.

These are exactly the sort of reasons why client authentication should be any "normal" auth scheme, and not an OAuth-special client_secret POST parameter. That fails for PUT, DELETE, and POST with a non-form body; and the security changes with GET.

--
James Manger

_______________________________________________
OAuth mailing list
OAuth@ietf.org
https://www.ietf.org/mailman/listinfo/oauth