Re: [OAUTH-WG] Section 7.2

Hannes Tschofenig <hannes.tschofenig@gmx.net> Mon, 18 June 2012 12:01 UTC

Return-Path: <hannes.tschofenig@gmx.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 AEE7F21F84CF for <oauth@ietfa.amsl.com>; Mon, 18 Jun 2012 05:01:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.491
X-Spam-Level:
X-Spam-Status: No, score=-102.491 tagged_above=-999 required=5 tests=[AWL=0.108, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id zZx2Hc53HZWT for <oauth@ietfa.amsl.com>; Mon, 18 Jun 2012 05:01:48 -0700 (PDT)
Received: from mailout-de.gmx.net (mailout-de.gmx.net [213.165.64.22]) by ietfa.amsl.com (Postfix) with SMTP id 34C8F21F84F0 for <oauth@ietf.org>; Mon, 18 Jun 2012 05:01:48 -0700 (PDT)
Received: (qmail invoked by alias); 18 Jun 2012 12:01:46 -0000
Received: from a88-115-216-191.elisa-laajakaista.fi (EHLO [192.168.100.101]) [88.115.216.191] by mail.gmx.net (mp002) with SMTP; 18 Jun 2012 14:01:46 +0200
X-Authenticated: #29516787
X-Provags-ID: V01U2FsdGVkX1/fHNsPEXDfADAZUU3eZD3zufErFxSv27eziQMsk9 KuJjyQySNJIyGI
Mime-Version: 1.0 (Apple Message framework v1084)
Content-Type: text/plain; charset="us-ascii"
From: Hannes Tschofenig <hannes.tschofenig@gmx.net>
In-Reply-To: <4E1F6AAD24975D4BA5B16804296739436654F446@TK5EX14MBXC283.redmond.corp.microsoft.com>
Date: Mon, 18 Jun 2012 15:01:45 +0300
Content-Transfer-Encoding: quoted-printable
Message-Id: <D8EF5B5C-56B6-4B17-8AB2-83DD116D9549@gmx.net>
References: <0CBAEB56DDB3A140BA8E8C124C04ECA201073394@P3PWEX2MB008.ex2.secureserver.net> <4E1F6AAD24975D4BA5B1680429673943665394D7@TK5EX14MBXC284.redmond.corp.microsoft.com> <0CBAEB56DDB3A140BA8E8C124C04ECA2010734C5@P3PWEX2MB008.ex2.secureserver.net> <0CBAEB56DDB3A140BA8E8C124C04ECA201073573@P3PWEX2MB008.ex2.secureserver.net> <4E1F6AAD24975D4BA5B168042967394366539839@TK5EX14MBXC284.redmond.corp.microsoft.com> <3929B3F4-D3B3-4CAB-BB22-CFA5BFBBE8E5@gmx.net> <4E1F6AAD24975D4BA5B16804296739436654F446@TK5EX14MBXC283.redmond.corp.microsoft.com>
To: Mike Jones <Michael.Jones@microsoft.com>
X-Mailer: Apple Mail (2.1084)
X-Y-GMX-Trusted: 0
Cc: "oauth@ietf.org WG (oauth@ietf.org)" <oauth@ietf.org>
Subject: Re: [OAUTH-WG] Section 7.2
X-BeenThere: oauth@ietf.org
X-Mailman-Version: 2.1.12
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: <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, 18 Jun 2012 12:01:49 -0000

Hi Mike, 

this text below does not prohibit error information to be sent back to the client (otherwise there would be a MUST NOT). 

So, if a developer reads this below then when should he send an error response and when not? 

Ciao
Hannes

PS: (I also believe that the "i.e." should rather be a "e.g." in the text below.)

On Jun 15, 2012, at 10:06 PM, Mike Jones wrote:

> There are cases where the OAuth specs specifically *prohibit* returning an error code or other error information, for security reasons.  For instance, http://tools.ietf.org/html/draft-ietf-oauth-v2-bearer-20#section-3.1 contains the language:
> 
>   If the request lacks any authentication information (i.e. the client
>   was unaware authentication is necessary or attempted using an
>   unsupported authentication method), the resource server SHOULD NOT
>   include an error code or other error information.
> 
> Hence, the SHOULDs, rather than MUSTs.
> 
> 				-- Mike
> 
> -----Original Message-----
> From: Hannes Tschofenig [mailto:hannes.tschofenig@gmx.net] 
> Sent: Friday, June 15, 2012 11:28 AM
> To: Mike Jones
> Cc: Hannes Tschofenig; Eran Hammer; oauth@ietf.org WG (oauth@ietf.org)
> Subject: Re: [OAUTH-WG] Section 7.2
> 
> Hi Mike, 
> 
> I personally would find it better to have fewer SHOULDs. Most of them have been there for a long time and so it is a bit late to complain but the challenge for protocol architectures is to figure out under what conditions they should do certain things. 
> 
> Additionally, I don't buy the argument that a server should not provide error responses (or to be only very brief, or even misleading) for a security point of view because attackers typically know more than ordinary developers or users and so you end up with a system that the normal user is unable to work with (in a failure case) but adversaries nevertheless get what they want. This comment relates to the first sentence that gives me the impression that the server may not send any error message in case of a failure, which sounds strange to me. 
> 
> Ciao
> Hannes
> 
> On Jun 15, 2012, at 4:15 AM, Mike Jones wrote:
> 
>> Thanks for writing the text below.  It looks fine to me.  About adding the other error parameters as suggestions, that seems like a reasonable thing to do.  How about the text at the end below, which adds mentions of error_description and error_uri?
>> 
>> 7.2.  Error Response
>> 
>>   If a resource access request fails, the resource server SHOULD inform
>>   the client of the error.  While the specifics of such error responses
>>   are beyond the scope of this specification, this documents establishes
>>   a common registry for error values to be shared among OAuth token
>>   authentication schemes.
>> 
>>   New authentication schemes designed primarily for OAuth token
>>   authentication SHOULD define a mechanism for providing an
>>   error status code to the client, in which the error values allowed are
>>   registered in the error registry established by this specification. Such
>>   schemes MAY limit the set of valid error codes to a subset of the
>>   registered values. If the error code is returned using a named parameter,
>>   the parameter name SHOULD be "error".
>> 
>>   Other schemes capable of being used for OAuth token authentication, but
>>   not primarily designed for that purpose, MAY bind their error values to the
>>   registry in the same manner.
>> 
>>   New authentication schemes MAY choose to also specify the use of the
>>   "error_description" and "error_uri" parameters to return error information
>>   in a manner parallel to their usage in this specification.
>> 
>> 
>>                                                            -- Mike
>> 
>> P.S.  If you already have the text you wrote in a copy of the draft, you should apply these spelling corrections:
>>               desgined -> designed
>>               authentiction -> authentication
>> 
>> -----Original Message-----
>> From: Eran Hammer [mailto:eran@hueniverse.com]
>> Sent: Thursday, June 14, 2012 3:29 PM
>> To: Eran Hammer; Mike Jones; oauth@ietf.org WG (oauth@ietf.org)
>> Subject: RE: [OAUTH-WG] Section 7.2
>> 
>> Mike - if you want to add the other error parameters as suggestions, that would be fine by me.
>> 
>> EH
>> 
>>> -----Original Message-----
>>> From: oauth-bounces@ietf.org [mailto:oauth-bounces@ietf.org] On 
>>> Behalf Of Eran Hammer
>>> Sent: Thursday, June 14, 2012 3:23 PM
>>> To: Mike Jones; oauth@ietf.org WG (oauth@ietf.org)
>>> Subject: Re: [OAUTH-WG] Section 7.2
>>> 
>>> 7.2.  Error Response
>>> 
>>>   If a resource access request fails, the resource server SHOULD inform
>>>   the client of the error.  While the specifics of such error responses
>>>   are beyond the scope of this specification, this documents establishes
>>>   a common registry for error values to be shared among OAuth token
>>>   authentication schemes.
>>> 
>>>   New authentication schemes desgined primarily for OAuth token
>>>   authentiction SHOULD define a mechanism for providing an
>>>   error status code to the client, in which the error values allowed are
>>>   registered in the error registry established by this specification. Such
>>>   schemes MAY limit the set of valid error codes to a subset of the
>>>   registered values. If the error code is returned using a named parameter,
>>>   the parameter name SHOULD be "error".
>>> 
>>>   Other schemes capable of being used for OAuth token authentication, but
>>>   not primarily designed for that purpose, MAY bind their error values to the
>>>   registry in the same manner.
>>> 
>>> EH
>>> 
>>> _______________________________________________
>>> 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
> 
> 
>