简单的SSO - 使用自定义身份验证 - CAS还是一些Oauth或openid服务器?
我想更多地了解解决单点登录的不同方法及其优缺点。您是否使用过一个特定的解决方案,告诉我它有什么好处,并告诉我限制或次优部分是什么。
以下是我想知道或不理解的细节。
SSO是一个巨大的话题,如维基百科中所列。我学到的越多,我的问题就越多。
首先,我不明白CAS的令牌验证的必要性,它有什么好处?
它更安全吗?我想它很容易像任何一样受到中间人的攻击。客户端是否也应该使用 ssl?
让我们变得真实,这是我们的需求:自动识别/登录用户(如果已经登录到我们的某个应用程序)。
- my-php-app.com
- my-java-app.com
- my-ruby-app.com
(我们有许多用不同语言编写的Web应用程序)
我们希望(保留)我们自己的身份验证规则和用户存储,但可能会添加一些Oauth2提供商,作为facebook-connect。我们希望它对用户来说非常简单,对使用它的开发人员来说也很简单。
你会怎么做?
- 中国科学院?
- Openid?我可以用它进行集中式身份验证吗?
- 其他?还是带有OAuth的服务器?
在客户端,您是否会使用 iframe(如灯箱)来显示重定向的页面?为什么/为什么不呢?
还有一个与SSO相关的问题:Saml经常被(错误地?)混入SSO讨论中 - 如果我这么说,我能理解吗?
saml 实现在将浏览器指向 www.yetanother-myapp.com 时不会提供 sso(自动登录)?
我研究过的一些相关的SO问题:
- 使用 CAS 或 OAuth 进行 SSO?- 他的需求描述不是我想要的,他描述的是CAS...
- OpenID 作为单一登录选项?- 嗯,我不确定我从中学到了什么。
谢谢你教育我!