【问题标题】:Integrating with client's existing active directory与客户现有的活动目录集成
【发布时间】:2013-08-10 07:56:15
【问题描述】:

我有一个正在运行的网站,它有自己的一组用户,并且有一个身份验证系统,它执行基本的数据库查找来验证用户登录到该站点的身份。我们的一个客户对该网站感兴趣,并且要求他们拥有一个 Active Directory,而不是再次向我们注册所有现有用户,而我应该使用它来对他们进行身份验证。这可以防止客户向我们注册所有用户并记住另一组用户名和密码。

我的网站是用 Java 构建的,我正在寻找一种可以与 Active Directory 集成的解决方案。

我是 Active Directory 的新手,一直在网上搜索,但未能找到最佳解决方案。我对 Active Directory 的理解是它会有一组用户名和密码,如果我能够成功地与它集成,除了拥有自己的用户数据库之外,我还必须在客户的 Active Directory 中查找,如果找到匹配项,我可以对用户进行身份验证。

如果我的理解有误,请纠正我,您能否指出正确的方向?

谢谢,

马扬克

【问题讨论】:

    标签: java active-directory adfs2.0 adfs adfs2.1


    【解决方案1】:

    你已经用 adfs 标记了这个,但问题上没有提到那个?

    很有趣,您也许可以使用 ADFS 做到这一点。

    如果您可以在自己这边集成 STS,那么您可以与 ADFS 联合,然后用户可以选择在哪个存储库上进行身份验证。

    我不确定您的数据库是如何进行身份验证的?如果是自定义的,则可能没有支持此功能的 STS。

    或者,在您的身份验证屏幕前添加另一个屏幕。此屏幕询问用户要使用哪个存储库。如果他们选择 AD,那么只需通过用于 Active Directory 的 Java API(例如 JNDI)访问 AD。

    【讨论】:

    • 感谢回复+1
    【解决方案2】:

    您的应用部署在哪里?如果它在您客户的场所,那么最简单的方法可能是像@nzpcmad 建议的那样对 AD(LDAP 服务器)进行 LDAP 查询。 Tomcat 也支持 Windows 身份验证,如果我没记错的话,那么走这条路可能会更容易。

    如果是在场外,则必须使用身份联合方法。您必须更改您的应用程序以接受 SAML 令牌并实施 SAML 协议(因为您处于 Java 世界中,这可能是最佳选择)。您的客户需要部署 STS(如 ADFS)。

    这实际上取决于客户如何设计和访问您的应用(本地与托管、单租户与多租户)。

    【讨论】:

    • 感谢您的回复。该应用程序将继续在我们的场所。 ADFS 似乎是我想要采取的路线。我将了解 SAML 令牌并实现它。
    • 嗯....现在有比 ADFS 其他(和更好)的选择 :-)。我会做一些额外的研究。
    【解决方案3】:

    如果您使用的是 Tomcat 6 及更高版本,请尝试我的 Tomcat SPNEGO/Active Directory Authnz。该代码具有生产质量,即将发布。建立网站并阅读文档,所有内容都已描述。

    【讨论】:

      猜你喜欢
      • 2019-01-08
      • 2015-12-06
      • 2015-08-30
      • 1970-01-01
      • 2018-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多