是否有可能configuration一个活动目录来回退帐户validation到另一个?

假设我有两个活动目录:AD-1和AD-2,我想获得以下行为:

当有人试图在AD-2上进行LDAPsearch以进行身份​​validation时,首先检查AD-2数据库,并且如果没有发现用户将其委派给AD-1。

这对于试图validation凭证的客户来说必须是透明的。

推理:我有一些Web应用程序正在使用LDAP身份validation并检查AD-2服务器。 AD-1将是公司主要的一个,我无法控制,但AD-2在我的控制之下。

我需要能够将用户添加到不在AD-1中的用户AD-2。 仍然任何用户frm AD-1 cand被认为对AD-2有效。

AD-2包含来自公司外部的用户。

注意:我configurationAD的经验很less。

这至less不是Active Directory中已经存在的东西。 恰恰相反 – 在对Kerberos或LDAP进行身份validation时,必须明确指定login用户的可分辨名称 – 这将包括相同的域名。 在这种情况下,任何types的“回退”都是无效的,因为明确指定的域名“ad1”不匹配“ad2”,并且在任何情况下对ad2服务器进行查询时authentication都会失败。

实现这种“目录联合”的唯一方法就是在所使用的目录之上使用重叠/抽象来进行两次search – 每个目录一次。 如果您可以修改您的Web应用程序,那么您可能会实现一个API来执行此操作,否则您需要实现某种代理服务以使用此function进行身份validation。

尽pipe所有用户相关数据的统一和所有应用程序的单点login的预期方向与您试图实现的目标完全相反,但这种问题的常见方法称为“身份pipe理”。

这是你必须在应用程序级别处理的东西。 如果您的应用程序对AD进行了身份validation调用,则只需编码您的应用程序即可将其用作身份validation源,并在每次迭代时将用户名与正确的域名作为前缀。

没有原生的ADfunction。

我们通过创buildAD2作为AD1的子域来实现类似的解决scheme(例如:ad2.ad1.com)。 这使我们可以将用户从父域添加到子域中的组,从而允许来自两者的帐户对应用程序进行身份validation。

请记住,这是在IT人员的全力配合下完成的。 事实上,他们开发了应用程序使用的解决scheme。

第二个可能的解决scheme是向您的客户AD添加crossRef对象,该对象将根据名称将授权请求redirect或引用到辅助LDAP。 这将需要您传递更多的login名称来查找对象。更多在这里关于AD中的自定义crossRef对象。

单向的信任可能被用来达到这个目的。 我不确定,但是应该可以将信任与来自内部域的只读域控制器结合使用。 如果没有像Atlassians Crowd这样的第三方应用程序,可以在多个目录上提供单点login。

编辑 – 正如所指出的,信任只适用于完全合格的名字。 我发现这对我的内部用户来说很好,因为要求他们包含他们的域名是很容易的。

我已经成功地使用Crowd将多个目录合并到单个界面中。 不确定在您的networking应用程序的具体细节,但这个产品(或一个喜欢它)可能是一种可能性。