[Openid-specs-ab] Comments on core through section 2.3

Mike Jones Michael.Jones at microsoft.com
Wed Nov 13 18:28:30 UTC 2013


The version of Core at http://openid.bitbucket.org/ now incorporates your review comments, George.  Here's a few responses to questions you asked and notes on the resolutions.

I didn't do 5-1 because you didn't suggest alternative wording and I didn't think of anything better either.

6-1 was replaced by the wording in the thread "[Openid-specs-ab] Definition of Authentication".

7-1:  Yes, the whole issuer is case sensitive.

7-2 will be addressed by moving the ID Token definition to earlier in the spec.

15-1: Yes, I believe that you'd be conformant by returning interaction_required.

15-2: Do you want to propose alternative wording?  It's not clear to me what's unclear. :)

24-3:  Please review the new text at http://openid.bitbucket.org/openid-connect-core-1_0.html#NonceNotes.

25-1:  Yes

32-1:  Because "code token" doesn't return an ID Token from the Authorization Endpoint

34-1:  Because "code token" doesn't return an ID Token from the Authorization Endpoint

Thanks again for the useful review, George!

                                                            -- Mike

From: openid-specs-ab-bounces at lists.openid.net [mailto:openid-specs-ab-bounces at lists.openid.net] On Behalf Of George Fletcher
Sent: Monday, October 21, 2013 9:45 AM
To: openid-specs-ab at lists.openid.net
Subject: [Openid-specs-ab] Comments on core through section 2.3

I did my review on the plane using my iPad and a PDF annotation app called 'GoodReader'. I've attached a marked up PDF as well as general text summary. I'd use the PDF as it provides more context:) I can move to the other specs Mike if you'd prefer.

Thanks,
George

See file attached to this message

File: OpenID Connect Core 1.0 - draft 14 - flattened.pdf

Annotation summary:

--- Page 5 ---

Highlight (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
authentication built on top of OAuth 2.0 and the use of Claims to communicate information about the End-User.

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
This wording doesn't flow well. I should suggest something better. If others agree, I'll work on a suggestion.



--- Page 6 ---

Highlight (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
what the entity knows, possesses, has as physical features, or behaviors, or combinations of these utilizing heuristics.

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
Suggest: what the entity knows, possesses, behavior patterns, has as physical features, or combinations of these utilizing heuristics.


--- Page 7 ---

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
Is the intent that the whole Issuer Identifier is case sensitive? Or just the path component as per normal URLs?

Highlight (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
case sensitive URL

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
Maybe a forward reference  to 2.1.3.6 would be helpful here?


--- Page 9 ---

Highlight (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
subject identifier

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
Subject identifier is not capitalized. Should it be?


--- Page 10 ---

Highlight (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
the

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
The -> a

Highlight (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
When using this flow, the redirection URI MAY use the http scheme, provided that the Client Type is confidential, as defined in Section 2.1 of OAuth 2.0;

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
This special exception is confusing. I almost wonder if it could be added to the security considerations and then the text here is... MUST except for the case x.x.x.x in Security Considerations. Another case where the will not be http or https is a mobile client implementing the code flow.

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
Is this use of 'nonce' in addition to that described in the validation steps for the hybrid flow? Or a different method of doing the same thing?


--- Page 12 ---

Highlight (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
audience

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
This is the first use of 'audience' in conjunction with the id_token. It might not make sense to someone just reading the specs without any other context. Maybe add a reference to the id_token processing rules section?


--- Page 13 ---

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
This is confusing. If I specify a id_token_hint and ask for the 'sub' claim then the AS must not response with a successful response if the user doesn't match the id_token_hint. However, if I don't ask for a sub claim then the AS can return an successful response where the id_token doesn't match the id_token_hint?


--- Page 15 ---

Highlight (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
interaction_required

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
What case is this covering that isn't already covered by the other *_required error codes? Is my OP compliant if I only return I the interaction_required error even if the case is a login_required?

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
Not sure the reg error makes sense.


--- Page 22 ---

Highlight (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
Multiple audiences are not supported for MAC based algorithms.

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
Why not? Wouldn't the secret associated with the azp work for the client to validate the id_token?

If we want interoperability across the use of audience and azp we are going to need to describe how it works in an extension document. It is not clear from this spec how it is to work and I was on most of the calls:)


--- Page 23 ---

Highlight (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
the

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
The -> in the


--- Page 24 ---

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
We say the same thing three different times. Once in 2.2.2 and twice in  2.2.2.1

Highlight (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
When using this flow, the redirection URI MUST NOT use the http scheme unless the Client is a native application, in which case it MAY use the http: scheme with localhost as the hostname.

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
I'm not sure we got these examples correct. Native application can be both mobile or rich desktop. In the mobile case it is most likely the scheme will not be http related at all. I suppose in either case the client could be running a local web server and use it to load the JS to process the fragment. Maybe the real question is wether local host should be allowed in the code flow.

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
I'm not sure this suggestion makes sense for the implicit flow. The client would need to write a cookie value on the domain of the redirect_uri and the attempt to read it on the return of the implicit flow. Wondering if a local storage example would make more sense.

Highlight (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
One method to achieve this is to store a random value as a signed session cookie, and pass the value in the nonce parameter. In that case, the nonce in the returned ID Token can be compared to the signed session cookie to detect ID Token replay by third parties.


--- Page 25 ---

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
Did we chose the negative constraint here to leave the door open for other types? If not a positive constraint is easier to understand. Something like "this is only returned when the response_type is 'id_token token'"


--- Page 29 ---

Highlight (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
No Access Token is returned when the value is id_token.

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
I don't think this is necessary as 'id_token' is not one of the allowed response_type values. Or maybe it's supposed to be 'code id_token'?


--- Page 32 ---

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
Why not also the 'code token' flow?


--- Page 34 ---

Note (yellow), Oct 20, 2013, 5:27 PM, George Fletcher:
Why isn't the id_token returned in the 'code token' case as the scope requires an 'openid' value which ensures that the response from the token endpoint includes an id_token.


(report generated by GoodReader)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openid.net/pipermail/openid-specs-ab/attachments/20131113/2a14268b/attachment.html>


More information about the Openid-specs-ab mailing list