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

George Fletcher gffletch at aol.com
Thu Nov 14 16:12:21 UTC 2013


Thanks so much Mike!

For comment 5-1: Text in the current spec is...

    The OpenID Connect Core 1.0 specification defines the core OpenID
    Connect functionality: authentication built on top of OAuth 2.0 and
    the use of Claims to communicate information about the End-User. It
    also describes the security and privacy considerations for using
    OpenID Connect.

I don't know that it matters much, or if it's any better... but here is 
an alternate option.

    The OpenID Connect Core 1.0 specification defines the core OpenID
    Connection functionality which is to provide an authentication layer
    built on top of OAuth2 with the additional capability to communicate
    information about the End-User via the use of Claims.

For 15-2 my main point was that interaction_required is probably a 
better return error than the other that are more specific and can leak 
information (multiple authenticated sessions) about the user's current 
state. To me, session_selection_required and consent_required are 
sub-error codes of interaction_required. In some ways, login_required 
also falls into this category. I can't think of why we need the more 
specific errors but as long as our OP doesn't need to use them, it's 
fine to leave them in the spec:)

Thanks,
George


On 11/13/13 1:28 PM, Mike Jones wrote:
>
> 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. J
>
> 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)
>

-- 
George Fletcher <http://connect.me/gffletch>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openid.net/pipermail/openid-specs-ab/attachments/20131114/4162ac6c/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: XeC
Type: image/png
Size: 80878 bytes
Desc: not available
URL: <http://lists.openid.net/pipermail/openid-specs-ab/attachments/20131114/4162ac6c/attachment.png>


More information about the Openid-specs-ab mailing list