我想知道是否应该使用CAS协议或OAuth +某些身份验证提供程序进行单点登录.
示例场景:
据我所知,这正是CAS发明的.CAS客户端必须实现CAS协议才能使用身份验证服务.现在我想知道在客户(消费者)网站上使用CAS或OAuth.OAuth是CAS的那部分的替代品吗?OAuth作为新的事实上的标准应该优先考虑吗?是否有一个易于使用的(不是Sun的OpenSSO!)更换为CAS支持不同的方法,如用户名/密码,OpenID的,TLS certifactes认证部...?
语境:
我刚刚发现WRAP,它可能成为OAuth的继任者.这是微软,谷歌和雅虎指定的新协议.
附录
我了解到OAuth不是为验证而设计的,即使它可用于实现SSO,但只能与OpenID等SSO服务一起使用.
OpenID在我看来是"新CAS".CAS具有OpenID未命中的一些功能(如单点注销),但在特定场景中添加缺失部分并不困难.我认为OpenID已被广泛接受,最好将OpenID集成到应用程序或应用程序服务器中.我知道CAS也支持OpenID,但我认为CAS对OpenID来说是可有可无的.
我想允许我的用户使用OpenID,Twitter和Facebook登录,如果他们选择不直接注册到我的网站.
在他们使用oAuth/OpenID登录之后(在你想知道之前:是的,我已查找了差异*),我会要求他们选择用户名.
我需要的只是他们的电子邮件地址和全名,(以及一个IP地址,但现在不相关).
我现在使用的当前表是:
author (id, fullname, username, password, salt, ip_address, email_hash, verified, created, deleted)
Run Code Online (Sandbox Code Playgroud)
密码是哈希值,email_hash用于恢复丢失的用户名.
如何更改此结构以使用一个用户名支持OpenID/oAuth帐户?
Scott Hanselman(备用链接)在2010年11月18日的Twitter推文中建议"OpenID可能已死".

如果这是真的(我不是说它),还有什么其他选项可用于通用登录(类似于OpenID)?
我目前正在参与一个规模相当大的项目,它面向公众的登录完全由OpenID驱动(使用DotNetOpenAuth).如果这对用户来说太具有挑战性(根据斯科特原始推文的评论),我将需要知道一些好的替代解决方案......如果有的话.
任何信息,将不胜感激.
澄清和改述.我不打算发起一场关于" 下一件大事是什么 "的辩论......我只是在问"有什么可以取代OpenID,如果它已经死了 ".我也不是说我认为OpenID 已经死了,而只是根据一位受人尊敬的开发者的评论来提问.
正如@marc在评论中指出的那样.Rob Conery有一篇很好的咆哮/博客文章名为Open ID Is A Nightmare,其中Rob提出了一些非常有说服力的论据,说明为什么OpenID不可取.我不得不同意我不想浪费大量时间为我的用户恢复帐户,我的时间最好花在其他地方.
所以回到最初的问题.什么是替代品?是否有一个更好的"标准"是"开放"但如果提供商决定改变某些东西却不会分崩离析?(例如,更改API或加密逻辑)...还可以跨越多个提供商并仍能识别单个用户?