I agree with Brian.
One of the use cases that relies on the issuing tokens to an unauthenticated 
client is Mobile App 
(http://tools.ietf.org/html/draft-zeltsan-oauth-use-cases-01#section-3.4). A 
use case's requirement is that "authorization shall be valid for a prolonged 
duration". Such long-term  authorization relies on the use of the refresh 
tokens.

Zachary

________________________________
From: oauth-boun...@ietf.org [mailto:oauth-boun...@ietf.org] On Behalf Of Brian 
Eaton
Sent: Wednesday, June 01, 2011 3:06 PM
To: Peter Saint-Andre
Cc: OAuth WG
Subject: Re: [OAUTH-WG] review of draft-ietf-oauth-v2-16

Hey Peter -

I haven't read all of your comments yet, but I wanted to clarify one point 
about client impersonation and installed apps.  The cuirrent text is 
unrealistic, but your request would push it the wrong way.  CC'ing Torsten as 
well.

---------------------
OLD:
  The authorization server SHOULD issue access tokens with limited
  scope and duration to clients incapable of authenticating.

NEW:
  If the authorization server issues access tokens to clients
  that are incapable of authenticating, the scope and duration of
  such tokens SHOULD be limited.

RATIONALE: We're not actively RECOMMENDING authorization servers are to
issue such tokens, are we?
---------------------

We are most definitely recommending that clients that have no way of 
authenticating are issued long-lived credentials to access user data.

Most installed applications work as follows:
- they ask the user for their password
- they save the password to disk

That's a horrible security problem, because it means you cannot upgrade user 
authentication to anything stronger than a password.  Client certificates, one 
time passwords, risk based authentication, throw it all out the window.  If 
you're going to let installed apps authenticate with just a password, nothing 
else you do to improve authentication is going to help.

This is a blocking issue for rolling out stronger forms of user authentication, 
and it's one of the main reasons I care about OAuth2.

Think IMAP and XMPP clients running on Windows desktops.  They are important, 
and we need a way to migrate them off of saving passwords.

So the current text basically says that you should issue temporary credentials 
to native apps.  That's not practical.  Native apps end up needing permanent or 
near-permanent credentials.  Expirations need to be measured in months.  And 
the credentials are going to be issued to stock IMAP and XMPP clients that 
don't have any way of authenticating themselves.

The advantage with OAuth2 over passwords is that
a) the refresh tokens are unguessable.
b) the refresh tokens aren't sent directly to the IMAP and XMPP servers, they 
are restricted to authorization servers.
c) if you've got a managed machine (think Kerberos logins), you can create 
flows that bridge from those managed credentials to temporary access 
credentials.

Cheers,
Brian
_______________________________________________
OAuth mailing list
OAuth@ietf.org
https://www.ietf.org/mailman/listinfo/oauth

Reply via email to