OAuth 2.0 standard editor quits, takes name off spec
Says the protocol is enterprise-grade rubbish
Agentless Backup is Not a Myth
The lead author and editor of the OAuth 2.0 network authorization standard has stepped down from his role, withdrawn his name from the specification, and quit the working group, describing the current version of the spec as "the biggest professional disappointment of my career."
Eran Hammer, who helped create the OAuth 1.0 spec, has been editing the evolving 2.0 spec for the last three years. He resigned from his role in June but only went public with his reasons in a blog post on Thursday.
"At the end, I reached the conclusion that OAuth 2.0 is a bad protocol," Hammer writes. "WS-* bad. It is bad enough that I no longer want to be associated with it."
OAuth is an authorization protocol that allows users to share private resources stored on one site with applications running on another site, without handing out their usernames and passwords.
Its best-known proponent is Facebook, which has implemented a draft version of the OAuth 2.0 spec as part of its Open Graph set of social APIs. Other high-profile sites that have implemented OAuth to some degree include Google, Microsoft, Twitter, and Yahoo!
But according to Hammer, none of these implementations is likely to be interoperable with any of the others, because the OAuth 2.0 specification has grown too broad and it allows for almost unlimited extensibility.
"It is this extensibility and required flexibility that destroyed the protocol," Hammer writes. "With very little effort, pretty much anything can be called OAuth 2.0 compliant."
The problem, in Hammer's view, is that the OAuth 2.0 working group has catered far too much to the needs of the enterprise world, at the expense of important security features that are necessary if the protocol is to be used on the web.
Authorization tokens in OAuth 2.0 are inherently less secure than they were in OAuth 1.0, he says, as a direct result of a series of compromises that were made to address the demands of the enterprise community.
Even worse, Hammer says, the working group has been unable to reach a consensus on a long line of significant issues, resulting in a specification that fails to deliver on even its most basic goals and doesn't achieve anything more than OAuth 1.0 did.
"I honestly don't know what use cases OAuth 2.0 is trying to solve any more," Hammer says.
Hammer believes the eventual breakdown of the OAuth specification effort was the direct result of its becoming a working group under the Internet Engineering Task Force (IETF) in 2009, which he now feels was "a huge mistake." The IETF, he believes, is institutionally incapable of producing a simple protocol that serves the needs of the web community, like OAuth 1.0.
Following Hammer's post, the broader OAuth community chimed in to agree with many of his points.
"I can't decide if I should feel guilty for dropping out immediately after IETF San Francisco, or if I should feel grateful I didn't waste any time on the OAuth 2.0 fight," writes Mark Atwood in a comment on Hammer's original post.
Others disagreed with Hammer's assertion that OAuth 2.0 was a failure, and said that the problems with the standardization process were more organizational.
"I've built client libraries for both OAuth 1.0 and 2.0 and I can tell you hands down that OAuth 2.0 is much easier to implement than OAuth 1.0," writes Joe Gregorio in a post on Google+. He adds, "The IETF process isn't really broken, but it really only works with good working group chairs in place."
What Hammer's departure will mean for the OAuth 2.0 standard remains to be seen. But Hammer himself is not optimistic.
"I think the OAuth brand is in decline," he writes. "This framework will live for a while, and given the lack of alternatives, it will gain widespread adoption. But we are also likely to see major security failures in the next couple of years and the slow but steady devaluation of the brand. It will be another hated protocol you are stuck with." ®
Regcast training : Hyper-V 3.0, VM high availability and disaster recovery
COMMENTS
Easy to implement isn't always good
The line "[...] that OAuth 2.0 is much easier to implement than OAuth 1.0," doesn't mean as much at it might seem at first. Yes, it may be easier to implement something that ticks all the boxes to be OAuth 2.0, but does that mean that it will interoperate with any other implementations of OAuth 2.0? From what I read in Hammer's post, the issue is that there are so many area in the OA2 spec that aren't nailed down - that are up to the implementor to choose - that you can have 2 fully compliant implementations and they won't talk to one another because of a myriad of differences in the choices made by the implementors.
I remember a story about POSIX, which likewise has lots of places where an implementor can make choices about what to implement and what to return a not implemented error. One comment was that it was possible to create an OS that was fully POSIX compliant yet was totally unable to run any programs within the POSIX API, "but who would be crazy enough to do that." Then came the POSIX layer for Windows NT....
re: the IETF will propose, but the market will decide.
I assume by this what you really mean is: The IETF will propose, but all major commercial companies will just implement whatever the hell they feel like for years before anything resembling a coherent and finished draft appears - by which time vendors will simply argue over who gets to 'win' in terms of specific implementations regardless of what the finished draft says.
Fun times are a-coming.
When all you have is a Hammer, everything looks like a Fail.

IT infrastructure monitoring strategies
Agentless Backup is Not a Myth
Top 10 SIEM implementer’s checklist
Steps to Take Before Choosing a Business Continuity Partner
Enabling efficient data center monitoring