Ruby单点登录(SSO)、CAS、OAuth、用户存储(userstore),我有哪些选择?

6

问:您会如何创建一个SSO?您会怎样处理身份验证(单独的应用程序还是与sso相同)和用户存储

背景信息:

我们有40多个php应用程序、java应用程序和ruby应用程序。

目前,我们有一个自定义的SSO +身份验证解决方案。它是一个用php编写的应用程序,现在被用作SSO,同时支持电子邮件/用户名/电话号码+密码作为身份验证。它可以工作,但最初只是为了几个应用程序而构建的,不是为了成为SSO - 解决方案。它没有可用的视图,每个应用程序都会创建自己的登录/注册表单并使用API。他们分享上下文,我们希望有一个更通用的设计。

现在我们知道要支持Oauth和openid解决方案,如Facebook连接、谷歌等等,除了现有的认证。我们可以扩展现有的php解决方案,但我们正在考虑替代方案。

如果您要在Ruby中完成所有这些工作,您会怎么做?

一些附加信息:

  • 今天所有用户都存在于SSO中。
    • 公司有时会收购其他公司/系统,他们拥有自己的用户。您会迁移还是创建某种映射器?
  • 客户在Microsoft CRM中,但我认为这与此无关。或者不是吗?
  • 我浅显地看了一下RubyCAS和ClassyCAS,并不知道它们是否合适。CAS是正确的方式吗?
  • 您会继续使用php吗?您会使用什么?

如您所见,我有很多问题。您建议怎么做?

2个回答

2
在我之前的工作中,我们使用Jasig CAS进行单点登录(SSO)(使用Java和Python编写的几个应用程序)。在解决了一些配置问题和我对所有Java事物的不喜爱后,它实际上运行得非常好。当时我发现wiki是一个有价值的资源,但在过去的一年里可能已经有所改变。
认证是通过一个独立的应用程序(自定义)处理的,该应用程序使用预初始化的OpenLDAP目录,并使用从AD服务器中获取用户信息的脚本。
关于实际服务器,您可能真的想使用Jasig服务器,如果我没记错的话,它是参考实现,并且可以通过Maven覆盖轻松定制

谢谢回答。幸运的是,我们不需要LDAP。希望我能得到不提供Java的答案,我已经离开了它,不想回头看,但我很感激这个建议。 - oma

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接