Re: [OAUTH-WG] Client credentials type

Torsten Lodderstedt <torsten@lodderstedt.net> Wed, 30 June 2010 06:49 UTC

Return-Path: <torsten@lodderstedt.net>
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 1582D3A6C34 for <oauth@core3.amsl.com>; Tue, 29 Jun 2010 23:49:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.249
X-Spam-Level:
X-Spam-Status: No, score=-2.249 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HELO_EQ_DE=0.35]
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 kO+Owq6FlYbA for <oauth@core3.amsl.com>; Tue, 29 Jun 2010 23:49:13 -0700 (PDT)
Received: from smtprelay01.ispgateway.de (smtprelay01.ispgateway.de [80.67.18.13]) by core3.amsl.com (Postfix) with ESMTP id D5C593A6A8B for <oauth@ietf.org>; Tue, 29 Jun 2010 23:49:12 -0700 (PDT)
Received: from [80.67.16.117] (helo=localhost) by smtprelay01.ispgateway.de with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.68) (envelope-from <torsten@lodderstedt.net>) id 1OTr6n-0002dg-UU; Wed, 30 Jun 2010 08:49:21 +0200
Received: from proxy2.t-online.net (proxy2.t-online.net [195.243.113.251]) by webmail.df.eu (Horde Framework) with HTTP; Wed, 30 Jun 2010 08:49:21 +0200
Message-ID: <20100630084921.12976ty3y7wuz6cc@webmail.df.eu>
Date: Wed, 30 Jun 2010 08:49:21 +0200
From: Torsten Lodderstedt <torsten@lodderstedt.net>
To: Yaron Goland <yarong@microsoft.com>
References: <90C41DD21FB7C64BB94121FBBC2E72343B3EC84C9D@P3PW5EX1MB01.EX1.SECURESERVER.NET> <4C28E814.1060102@lodderstedt.net> <AANLkTilw0noo6qyKKXDI06Y4bIiippjvjGRFia0MwXmY@mail.gmail.com> <4C28F73A.4090800@lodderstedt.net> <7C01E631FF4B654FA1E783F1C0265F8C579D107B@TK5EX14MBXC117.redmond.corp.microsoft.com>
In-Reply-To: <7C01E631FF4B654FA1E783F1C0265F8C579D107B@TK5EX14MBXC117.redmond.corp.microsoft.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="ISO-8859-1"; DelSp="Yes"; format="flowed"
Content-Disposition: inline
Content-Transfer-Encoding: 7bit
User-Agent: Dynamic Internet Messaging Program (DIMP) H3 (1.1.2)
X-Originating-IP: 195.243.113.251
X-Df-Sender: 141509
Cc: "OAuth WG (oauth@ietf.org)" <oauth@ietf.org>
Subject: Re: [OAUTH-WG] Client credentials type
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: Wed, 30 Jun 2010 06:49:14 -0000

that's pretty big! Can you please explain what kind of client you  
authenticate with such assertions? They must contain hundreds of  
attributes.

regards,
Torsten.

Zitat von Yaron Goland <yarong@microsoft.com>:

> We regularly deal with SAML assertions that easily go into the 100s  
> of K. This is far more than most HTTP servers will accept. So we are  
> pretty much required to use the body.
>
>> -----Original Message-----
>> From: oauth-bounces@ietf.org [mailto:oauth-bounces@ietf.org] On Behalf
>> Of Torsten Lodderstedt
>> Sent: Monday, June 28, 2010 12:26 PM
>> To: Marius Scurtescu
>> Cc: OAuth WG (oauth@ietf.org)
>> Subject: Re: [OAUTH-WG] Client credentials type
>>
>> what size do you expect? SPNEGO authentication headers can be up to
>> 12392 bytes and this does not seem to be a problem.
>>
>> regards,
>> Torsten.
>>
>> Am 28.06.2010 21:19, schrieb Marius Scurtescu:
>> > Only HTTP headers may not be enough. In Yaron's proposal, the
>> > assertion could be a SAML assertion, and these could be too large for
>> > headers.
>> >
>> > I think #1 makes sense.
>> >
>> > Marius
>> >
>> >
>> >
>> > On Mon, Jun 28, 2010 at 11:21 AM, Torsten Lodderstedt
>> > <torsten@lodderstedt.net>  wrote:
>> >
>> >> I would prefer (2) since authorization headers are the natural way to
>> >> handle authentication in HTTP. Different client credential mechanisms
>> >> can be represented by different authentication scheme (even
>> >> custom-defined). HTTP libraries typically have special support for
>> >> handling such headers and it keeps the authentication mechanism
>> >> orthogonal of the API. Moreover, authorization headers very well work
>> >> together with status code 401 and WWW-Authenticate headers. Using
>> >> WWW-Authenticate headers, an authz server can easily signal what
>> >> mechanisms (multiple WWW-Authenticate headers are allowed in a single
>> HTTP response) it accepts for a particular request.
>> >>
>> >> regards,
>> >> Torsten.
>> >>
>> >> Am 28.06.2010 19:39, schrieb Eran Hammer-Lahav:
>> >>
>> >> Yaron Goland offered a proposal for an additional client credentials
>> >> mechanism based on assertion. His proposal raises the issue of
>> >> differentiating between the different kind of credentials used. When
>> >> it comes to access grant types, this group argued for being explicit
>> >> and providing a parameter declaring the grant type being used (even
>> >> though it is not technically necessary).
>> >>
>> >>
>> >>
>> >> While I don't believe a grant or credential type parameter is needed
>> >> - the type can be deduced from the other parameters present - we now
>> >> treat the same requirement with a different solution. I think this
>> >> creates a broken environment for extensibility (which is my current
>> focus).
>> >>
>> >>
>> >>
>> >> At the same time, introducing such a parameter can conflict with the
>> >> standard HTTP authentication mechanism. For example, a request
>> >> containing both "client_credentials_type=basic" and the HTTP
>> >> Authorization header seems odd.
>> >>
>> >>
>> >>
>> >> There are a few ways to address this:
>> >>
>> >>
>> >>
>> >> 1. Only use a type parameter when the credentials are passed using
>> >> parameters and not a header.
>> >>
>> >> 2. Only allow HTTP headers for authentication, while
>> >> "grandfathering-in" the client_secret parameter to simplify the most
>> common current practice.
>> >>
>> >> 3. Leave is underspecified, relying on the presence of extension
>> >> parameters or authentication headers for other credentials types.
>> >>
>> >>
>> >>
>> >> Thoughts?
>> >>
>> >>
>> >>
>> >> EHL
>> >>
>> >> _______________________________________________
>> >> 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 mailing list
>> OAuth@ietf.org
>> https://www.ietf.org/mailman/listinfo/oauth
>
>