首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为单点登录管理大型用户数据库

为单点登录管理大型用户数据库
EN

Stack Overflow用户
提问于 2008-09-16 23:08:32
回答 5查看 934关注 0票数 6

您将如何实现具有以下目标的系统:

  • 管理几十万现有用户的身份验证和授权,这些用户目前与第三方供应商的应用程序紧密集成(我们希望将这些用户分解成我们管理的应用程序,并使我们的应用程序针对它工作,再加上我们的第三方供应商使用它)。
  • 管理链接到这些用户的配置文件信息
  • 必须能够在任何平台(Windows、*nix、PHP、ASP/C#、Python/Django等)上访问任意数量的web应用程序。

下面是一些示例实现:

  • LDAP/AD服务器管理一切。对所有配置文件数据使用自定义架构。一切都可以针对LDAP/AD进行身份验证,并且我们可以将各种ACL和概要文件数据存储在一个自定义模式中。
  • 只使用LDAP/AD进行身份验证,使用某种传统数据库(MSSQL/PostgreSQL/MySQL)或基于文档的DB (CouchDB、SimpleDB等)将LDAP用户绑定到最健壮的配置文件/授权服务器上。使用LDAP进行授权,然后按DB获取更高级的内容。
  • 使用传统数据库(关系数据库或文档数据库)进行任何操作。

这三个人中有谁是最好的吗?是否有符合上述目标并易于实施的其他解决方案?

**我应该补充一点,几乎所有将对用户数据库进行身份验证的应用程序都将在我们的控制之下。仅有的几个局外人将是我们要从当前用户数据库中删除的应用程序,也许还有一两个其他的应用程序。没有什么比需要一个openID服务器更广泛的了。

同样重要的是要知道,许多这些用户已经拥有这些帐户5-8年,并知道他们的登录和密码,等等。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2008-09-16 23:26:51

身份验证和授权/分析是有区别的,所以不一定要将两者都强制放到一个工具中。使用LDAP进行身份验证和使用DB进行授权的第二种解决方案似乎更加健壮,因为LDAP数据由用户控制,而DB则由管理员控制。后者可能会随着时间的推移在结构和复杂性上发生变化,但身份验证只是身份验证。事实证明,这些职能的分离将更易于管理。

票数 5
EN

Stack Overflow用户

发布于 2008-09-16 23:19:26

如果您有一个现有的ActiveDirectory基础设施,这将是可行的方法。这对于已经设置Windows服务器进行身份验证的公司尤其有利。如果是这样的话,我倾向于您在“示例实现”中的第一个要点。

否则,它将是AD和开源LDAP选项之间的翻滚。

为单点登录提交您自己的身份验证模式可能是不可行的(特别是考虑到您可能需要做大量的文档和集成工作),而且显然不要将您的身份验证服务器与系统上运行的任何应用程序捆绑在一起(因为您希望它能够独立于此类应用程序的负载)。

祝你好运!

票数 2
EN

Stack Overflow用户

发布于 2008-09-16 23:29:37

只使用LDAP/AD进行身份验证,使用某种传统数据库(MSSQL/PostgreSQL/MySQL)或基于文档的DB (CouchDB、SimpleDB等)将LDAP用户绑定到最健壮的配置文件/授权服务器上。使用LDAP进行授权,然后按DB获取更高级的内容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/78217

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档