>>>>> "Kathleen" == Kathleen Moriarty <kathleen.moriarty.i...@gmail.com> writes:

    Kathleen> registry, but setting HTTP Basic as the default seems like
    Kathleen> a really bad choice. HOBA is on it's way to becoming an
    Kathleen> RFC from the HTTPAuth working group.  HTTPAuth also has an
    Kathleen> updated version of Basic that is in IETF last call, but I
    Kathleen> know you are pointing to the OAuth 2.0 document, so it
    Kathleen> would be that document that gets updated and not this
    Kathleen> draft.  The new version of HTTP Basic fixes some
    Kathleen> internationalization problems and spells out the security
    Kathleen> issues much more clearly, so it probably doesn't matter
    Kathleen> too much to update the reference, but maybe makes it more
    Kathleen> clear that basic is not a secure form of authentication.
    Kathleen> Can you provide some justification as to why this is okay
    Kathleen> to set basic as the default and add that to the draft?
    Kathleen> Section 2.3.1 of OAuth 2.0 just says this MUST be
    Kathleen> implemented, but that any HTTP schemes can be used.  Why
    Kathleen> not register another method and use that instead as the
    Kathleen> default?  You could use digest and there is library
    Kathleen> support.  It's not a great answer, but slightly better
    Kathleen> than passwords with basic.  You could register HOBA and
    Kathleen> use that instead, the only downside is limited library
    Kathleen> support at the moment.  


I'm disappointed to be reading the above, particularly the last
sentence, today.
I'd hope that we'd have a better wide-spread understanding of the issues
in deploying credentials by this point.

Yes, you absolutely can choose whatever you like as the authentication
scheme for a single-use account.  If my account will only be used with a
particularly dynamically registration then I probably can get away with
choosing whatever I want as a default authentication and statements like
"the only down-side will be limited library availability," will be true.

However, a lot of deployments re-use accounts.  That is, the
deploymentwill allow some form of single sign-on.  The same account may
be used for an oauth dynamic registration as well as a bunch of other
things.
Even more of an issue, the backend database of credentials may already
exist and may not be defined by this particular application.

Digest is absolutely impossible to use if I've got a database of  NTLM
hashes (read Active Directory) that are my credentials.  (In the
particular case of AD and digest, you probably have a solution if you
are using Microsoft's implementation.)
However, if I've got some relational (or nosql) database storing hashes
that  I've been accumulating as I sign up users for the last few years,
I can only use authentication schemes compatible with those hashes.


The huge deployment advantage of basic is that if you present me the
password, I can match against whatever I have on the backend.  I can try
various normalizations, try code-page conversions, rehash, whatever.
If your client implements scram, and I have NTLM, we're never going to
be able to talk.  Me implementing scram doesn't help if that's not how
I've got credentials stored.

Put another way, end protocols like this are not the right place to
fight passwords.  You transition credential technologies at the
deployment level, not at the protocol level.

For interoperability in something like this we're likely going to do no
better than basic.  Anything else from httpauth will fall squarely into
the category of MUST BUT WE KNOW YOU WON't for some significant
deployments.

What I've said above doesn't apply particularly to protocols where the
credentials will not be reused.

I'd be happy to talk some time about strategies for giving deployments
the tools they need to move their credential interface away from
passwords, but it does need to be thought of as a deployment issue
crossing all the applications and protocols that a set of credentials
use.  This is the wrong place to fight that battle.

--Sam

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

Reply via email to