Subject: [OAUTH-WG] Adding machine readable errors to SPOP?

From: Nat Sakimura <[email-masked]>
Date: Wed, 12 Nov 2014 20:48:51 +0000

As discussed at F2F today at IETF 91 OAuth WG, there has been some request
to have a more fine grained machine readable error messages.

Currently, it only returns the error defined in RFC6749 and any more
details is supposed to be returned in error_descripton and error_uri.

So, I came up with the following proposal. If WG agrees, I would put text
embodying it into the draft-04. Otherwise, I would like to go as is. You
have to speak out to put it in. (I am sending out -03, which we meant to
send before submit freeze, without it..)

nError response to authorization request
lReturns invalid_request with additional error param spop_error with the
following values:
▪S256_unsupported
▪none_unsupported
▪invalid_code_challenge

Clients MUST NOT accept the downgrade

request through this as it may be a downgrade

attack by a MITM.
nError response to token request
lReturns invalid_request with additional error param spop_error with the
following values:
▪invalid _code_verifier
▪verifier_challenge_mismatch
nAuthorization server should return more descriptive information on
lerror_description
lerror_uri

---

From: Mike Jones <[email-masked]>
Date: Wed, 12 Nov 2014 20:56:03 +0000

Is S256_unsupported or algorithm_unsupported the better error description?  I’m asking because I also expect that at some point in the approval process for this document you’ll be asked to support algorithm agility (for instance, being able to use SHA-3-256).

                                                            -- Mike

From: OAuth [mailto:[email-masked]] On Behalf Of Nat Sakimura
Sent: Wednesday, November 12, 2014 10:49 AM
To: oauth
Subject: [OAUTH-WG] Adding machine readable errors to SPOP?

As discussed at F2F today at IETF 91 OAuth WG, there has been some request to have a more fine grained machine readable error messages.

Currently, it only returns the error defined in RFC6749 and any more details is supposed to be returned in error_descripton and error_uri.

So, I came up with the following proposal. If WG agrees, I would put text embodying it into the draft-04. Otherwise, I would like to go as is. You have to speak out to put it in. (I am sending out -03, which we meant to send before submit freeze, without it..)

•Error response to authorization request
•Returns invalid_request with additional error param spop_error with the following values:
▪S256_unsupported
▪none_unsupported
▪invalid_code_challenge

attack by a MITM.
•Error response to token request
•Returns invalid_request with additional error param spop_error with the following values:
▪invalid _code_verifier
▪verifier_challenge_mismatch
•Authorization server should return more descriptive information on
•error_description
•error_uri

---

From: Nat Sakimura <[email-masked]>
Date: Wed, 12 Nov 2014 22:48:43 +0000

I've thought about that, and I thought we could just add the error message
when we add new alg.
e.g., when we add SHA-3-256, we can add SHA-3-256_unsupported.
On Thu Nov 13 2014 at 5:56:38 Mike Jones <[email-masked]>
wrote:

>  Is S256_unsupported or algorithm_unsupported the better error
> description?  I’m asking because I also expect that at some point in the
> approval process for this document you’ll be asked to support algorithm
> agility (for instance, being able to use SHA-3-256).
>
>
>
>                                                             -- Mike
>
>
>
> *From:* OAuth [mailto:[email-masked]] *On Behalf Of *Nat Sakimura
> *Sent:* Wednesday, November 12, 2014 10:49 AM
> *To:* oauth
> *Subject:* [OAUTH-WG] Adding machine readable errors to SPOP?
>
>
>

---

From: Bill Mills <[email-masked]>
Date: Thu, 13 Nov 2014 00:32:46 +0000 (UTC)

Let's not enumerate all possible failure paths as error messages.  Simply putting "unsupported_hash" is best.  The client then needs a way to discover allowed hashes.  You could register something like "supported_hashes" to allow that to be returned.
We really need to figure out if discovery will simply leverage OpenID deiscovery (which seems workable) or if we define something completely else. 

     On Wednesday, November 12, 2014 2:48 PM, Nat Sakimura <[email-masked]> wrote:

 I've thought about that, and I thought we could just add the error message when we add new alg. 
e.g., when we add SHA-3-256, we can add SHA-3-256_unsupported. 
On Thu Nov 13 2014 at 5:56:38 Mike Jones <[email-masked]> wrote:

Is S256_unsupported or algorithm_unsupported the better error description?  I’m asking because I also expect that at some point in the approval process for this document you’ll be asked to support algorithm agility (for instance, being able to use SHA-3-256).                                                             -- Mike From: OAuth [mailto:[email-masked]]On Behalf Of Nat Sakimura
Sent: Wednesday, November 12, 2014 10:49 AM
To: oauth
Subject: [OAUTH-WG] Adding machine readable errors to SPOP? As discussed at F2F today at IETF 91 OAuth WG, there has been some request to have a more fine grained machine readable error messages.  Currently, it only returns the error defined in RFC6749 and any more details is supposed to be returned in error_descripton and error_uri.  So, I came up with the following proposal. If WG agrees, I would put text embodying it into the draft-04. Otherwise, I would like to go as is. You have to speak out to put it in. (I am sending out -03, which we meant to send before submit freeze, without it..)  nError response to authorization requestlReturnsinvalid_request with additional error paramspop_errorwith the following values:▪S256_unsupported▪none_unsupported▪invalid_code_challengeClients MUST NOT accept the downgraderequest through this as it may be a downgradeattack by a MITM.nError response to token requestlReturnsinvalid_request with additional error paramspop_errorwith the following values:▪invalid _code_verifier▪verifier_challenge_mismatchnAuthorization server should return more descriptive information on lerror_descriptionlerror_uri   

_______________________________________________
OAuth mailing list
[email-masked]
https://www.ietf.org/mailman/listinfo/oauth

---

From: Brian Campbell <[email-masked]>
Date: Fri, 14 Nov 2014 09:26:41 -0700

I struggle to see the value in adding more fine grained machine readable
error messages for this.

Do we really want clients to try and negotiate the code_challenge_method
using browser redirects? Especially in light of the fact that we'll likely
also be discouraging AS's from redirecting on some error conditions when
there's no user interaction.

---

From: Nat Sakimura <[email-masked]>
Date: Fri, 14 Nov 2014 16:52:03 +0000

<editorhatoff>I find not much, if any. </editorhatoff >

On Fri, Nov 14, 2014 at 06:27 Brian Campbell <[email-masked]>
wrote:

>> As discussed at F2F today at IETF 91 OAuth WG, there has been some
>> request to have a more fine grained machine readable error messages.
>>

---

From: John Bradley <[email-masked]>
Date: Fri, 14 Nov 2014 07:07:18 -1000

<hatoff> Nat and I discussed it yesterday and I am still personally unconvinced that the errors from the authorization endpoint are helpful.   So I am personally against adding specific errors for S256_unsupported </hatoff>

On Nov 14, 2014, at 6:52 AM, Nat Sakimura <[email-masked]> wrote:

> On Fri, Nov 14, 2014 at 06:27 Brian Campbell <[email-masked]> wrote:
> I struggle to see the value in adding more fine grained machine readable error messages for this. 
> 
> Do we really want clients to try and negotiate the code_challenge_method using browser redirects? Especially in light of the fact that we'll likely also be discouraging AS's from redirecting on some error conditions when there's no user interaction. 
> 
> lReturns invalid_request with additional error param spop_error with the following values:
> ▪S256_unsupported
> ▪none_unsupported
> ▪invalid_code_challenge
> lReturns invalid_request with additional error param spop_error with the following values:
> ▪invalid _code_verifier

---

From: Nat Sakimura <[email-masked]>
Date: Fri, 14 Nov 2014 20:23:27 +0000

That pretty much was the conclusion we reached. I believe that it was what
the F2F room inclined to. So, for -04, we added a section on error response
but it doesn't have those granular errors.
On Fri, Nov 14, 2014 at 07:07 John Bradley <[email-masked]> wrote:

> <hatoff> Nat and I discussed it yesterday and I am still personally
> unconvinced that the errors from the authorization endpoint are helpful.
> So I am personally against adding specific errors for S256_unsupported
> </hatoff>
>
>>> So, I came up with the following proposal. If WG agrees, I would put
>>> text embodying it into the draft-04. Otherwise, I would like to go as is.
>>> You have to speak out to put it in. (I am sending out -03, which we meant
>>> to send before submit freeze, without it..)
>>>

---

From: Bill Mills <[email-masked]>
Date: Fri, 14 Nov 2014 20:54:44 +0000 (UTC)

I sent some feedback on that section in a different message on list. 

     On Friday, November 14, 2014 12:41 PM, Nat Sakimura <[email-masked]> wrote:

 That pretty much was the conclusion we reached. I believe that it was what the F2F room inclined to. So, for -04, we added a section on error response but it doesn't have those granular errors. 
On Fri, Nov 14, 2014 at 07:07 John Bradley <[email-masked]> wrote:

As discussed at F2F today at IETF 91 OAuth WG, there has been some request to have a more fine grained machine readable error messages. 
Currently, it only returns the error defined in RFC6749 and any more details is supposed to be returned in error_descripton and error_uri. 
So, I came up with the following proposal. If WG agrees, I would put text embodying it into the draft-04. Otherwise, I would like to go as is. You have to speak out to put it in. (I am sending out -03, which we meant to send before submit freeze, without it..) 
nErrorresponse to authorization requestlReturns invalid_request withadditional error param spop_error with the following values: ▪S256_unsupported▪none_unsupported▪invalid_code_challengeClientsMUST NOT accept the downgrade request throughthis as it may be a downgrade attack by a MITM. nErrorresponse to token requestlReturns invalid_request withadditional error param spop_error with the following values: ▪invalid _code_verifier▪verifier_challenge_mismatchnAuthorizationserver should return more descriptive information on lerror_descriptionlerror_uri

---

From: Nat Sakimura <[email-masked]>
Date: Fri, 14 Nov 2014 21:00:12 +0000

Thanks. I will dig it up.