On Thu, Jun 2, 2011 at 11:05 PM, Shane B Weeden <swee...@au1.ibm.com> wrote:
> Would anyone care to explain what the value of a refresh token is for peer
> to peer applications utilizing the client_credentials grant type,  or
> validate if my explanation is the intended use case?

Are you asking why would an authorization server issue a refresh token
when the client credentials grant type is used?

My guess is that in most cases authorization servers will not issue a
refresh token in this case. Refresh tokens are optional, see sections
4.4.3 and 5.1.

I think that the example in 4.4.3 should show only an access token.
Also, section 4.4.3 should probably state that in this case the
authorization server SHOULD not issue a refresh token.

Section numbers are for draft 16.

Marius

>
> Recall:
> * it is required to provide client credentials to get an access token [and
> refresh token]
> * it is also required to provide client credentials to exchange a refresh
> token for an access token (small assumption here based on recent
> discussions ... but I think it had better be for the client_credentials
> flow)
> * unlike the authorization code flow, there is no authorization step with
> the user involved that makes obtaining a new access token directly from the
> client credentials any less onerous than using a refresh token
>
> About the only use case I can contrive that makes any sense is when
> multiple instances of apps use the same client credentials (already a bad
> idea) and you want to revoke access to a subset of them. To do the
> revocation you would need to simultaneously:
> 1. Revoke the refresh token and any access tokens issued to compromised
> instances
> 2. Update the client secret (or whatever authentication method clients
> have) on those client instances that are still considered ok.
>
> In a deployment where each client has it's own credentials, which should be
> "situation normal" from a security perspective, I don't see any value for
> the refresh token. I also cringe at the idea of someone suggesting that
> refresh token can be presented without client credentials - in this case
> that's like saying client X has n passwords, where n is the number of
> issued refresh tokens. Better to create n sets of client credentials in the
> first place.
>
> Thanks,
> Shane.
>
> _______________________________________________
> 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

Reply via email to