[Openid-specs-ab] Multiple response types
John Bradley
ve7jtb at ve7jtb.com
Thu Nov 3 16:10:11 UTC 2011
Part of the problem is the wording of OAuth conflating Implicit client (client can't keep a secret) and token response type.
return_type communicates what you want in the response from the Authorization server, and how the Authorization server SHOULD return it.
Now if I understand Breno correctly the SHOULD has to do with HTML 5 post message. If a client registers a special redirect_uri the Authorization server would use post message to the parent window or something like that.
I have fixed the examples you have pointed out.
John B.
Draft 7 of Standard has the breakdown.
4.2.1. How to Get an Authorization Code, Access Token, and ID Token
The Authorization Server MUST support both the ""code"" and the
""id_token token"" "response_type".
The client may request any OAuth 2.0 registered response type
supported by the Authorization Server.
The OAuth 2.0 specification documents two response types:
code When supplied as the value for the "response_type" parameter, a
successful response MUST include an Authorization Code as defined
in the OAuth 2.0 specification. Both successful and error
responses MUST be added as parameters to the query component of
the response. All tokens are returned from the Token Endpoint.
Authorization Servers MUST support this "response_type".
token When supplied as the value for the "response_type" parameter,
a successful response MUST include an Access Token as defined in
the OAuth 2.0 specification. Both successful and error responses
MUST be fragment-encoded. No ID Token is provided to the client.
Openid Connect supports these additional flows [RESPONSE.TYPES] that
have been registered:
id_token token When supplied as the value for the "response_type"
parameter, a successful response MUST include both an Access Token
as well as an ID Token. Both success and error responses SHOULD
be fragment-encoded. Authorization Servers MUST support this
"response_type".
Sakimura, et al. [Page 8]
OpenID Connect Standard 1.0 - draft 07 November 2011
code token When supplied as the value for the "response_type"
parameter, a successful response MUST include both an Access Token
and an Authorization Code as defined in the OAuth 2.0
specification. Both successful and error responses SHOULD be
fragment-encoded.
code id_token When supplied as the value for the "response_type"
parameter, a successful response MUST include both an
Authorization Code as well as an ID Token. Both success and error
responses SHOULD be fragment-encoded.
code id_token token When supplied as the value for the
"response_type" parameter, a successful response MUST include an
Authorization Code, an ID Token, and an Access Token. Both
success and error responses SHOULD be fragment-encoded.
On 2011-11-03, at 9:01 AM, Roland Hedberg wrote:
> Hi!
>
> I have a bit of a problem getting my head around multiple response types and what it means.
>
> If the client specifies "code token" or for that matter "code id_token token" as response types in an authorization request.
>
> Is this to be regarded as an implicit flow, code flow or neither ?
>
> Assuming it is a 'code flow'-like flow then the client should be able to use the authorization code received to get a token from the token endpoint.
>
> What is the relationship between the token information returned in the redirect URI and the response to the access token request ?
> Are they expected to be the same except for refresh_token which may appear in the access token response?
>
> By the way, in the examples in 4.3.4.1 access_token is wrongly named token.
>
> -- Roland
>
>
> _______________________________________________
> Openid-specs-ab mailing list
> Openid-specs-ab at lists.openid.net
> http://lists.openid.net/mailman/listinfo/openid-specs-ab
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openid.net/pipermail/openid-specs-ab/attachments/20111103/f2945f75/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4767 bytes
Desc: not available
URL: <http://lists.openid.net/pipermail/openid-specs-ab/attachments/20111103/f2945f75/attachment.p7s>
More information about the Openid-specs-ab
mailing list