我考虑使用OAuth进行单点登录(SSO)和RESTful服务.乍一看使用OAuth作为事实上的标准对我来说很自然.但我必须承认,我不明白如何将它用于SSO.在研究OAuth期间,我发现越来越多的批评Auth - 以至于我倾向于认为OAuth失败了.
OAuth很难实现.
可用性很差.
为什么Facebook今天没有实施OAuth:
"OAuth比我们自己的本机身份验证机制更复杂,性能更差"
"OAuth WRAP看起来会解决大多数或所有这些问题"
由于两个请求和长URI,性能不佳
"图书馆质量总体上很差"
可能由微软,雅虎和谷歌提供支持的WRAP将取代OAuth.
OAuth(和WRAP)发生了什么?
那么OAuth失败了吗?SSO的替代品有哪些 - 最好是那些被广泛接受或者广泛使用的观点?你更喜欢WRAP吗?
OAuth不是SSO解决方案,它是通常用于委托API授权的协议.3脚OAuth允许请求访问受保护资源的客户端将授权委托给托管该资源的服务器.基本上,用户不必将其凭据提供给第三方(客户端),而只需提供给托管受保护资源的服务器.如果您希望实现单点登录,OpenID可能是更合适的解决方案.您还可以使用OpenID OAuth扩展程序,该扩展程序允许您通过OAuth将身份验证与授权相结合.
目前正在对OAuth 2.0进行工作.WRAP是作为一种临时解决方案开发的,用于解决原始OAuth 1.0a规范未涵盖的一些用例.WRAP不会取代OAuth,而WRAP的想法将在适当的时候进入OAuth 2.0.OAuth的许多原作者以及WRAP的一位作者都在这里写过:
OAuth发生了什么?
所以不,OAuth没有失败,事实上它已经被广泛采用.OAuth 1.0将继续由大量提供商实施,最终也将提供OAuth 2.0.WRAP适用于那些想要利用它现在解决的用例的人.
关于将OAuth作为客户实施的难度,为什么不试试呢?可用的库具有不同的质量,但是通常可以在一天之内实现OAuth客户端.