2012-04-13 53 views
1

链接验证我有以下两个LDAP(slapd的)服务器:与LDAP

company.com

  • OU =用户,DC =公司,DC = com的
    • 的uid = employee1
    • UID =和Employee2

opensourceproject.com

  • OU =用户,DC = opensourceproject,DC = com的
    • 的uid = member1中
    • 的uid = member2

我想要什么要实现的是,一个客户端(bugzilla,svn等)可以透明地查询开源项目。 com ldap适用于两台服务器上的用户。一个查询可以是:“check authenticationof uid = employee1”,由客户端发送到opensourceproject.com ldap服务器。服务器现在应该查看他的列表并查看用户是否可用,如果不存在,则链接到company.com ldap并查看它是否存在:返回结果。

有没有可能做到这一点?大多数客户需要一个搜索库找到的成员,所以我可能会被issung上OU =用户,DC = opensourceproject,DC = COM,它不会在company.com服务器上存在的搜索,所以我我不知道如何连接两棵树。如果我使用空的搜索库,那会起作用吗?我想我可能遇到各种各样麻烦的束缚。

是否有可能使这项工作与ldap?如果是,如何?

+0

您确定UID在两个目录中的唯一性吗? – JPBlanc 2012-04-16 04:27:01

+0

是的,这是有保证的。 – Nihathrael 2012-04-16 13:40:48

回答

2

至少存在四种可能的解决方案:

  • LDAP客户机必须执行两个搜索,一个与对应于用户的位置的一个服务器上的基础对象,而另一个具有对应于基础物体用户在另一台服务器上的位置;搜索范围,筛选器和要检索的属性必须针对每个服务器进行调整。此解决方案虽然可行,但形式较差,因为LDAP客户端必须知道两组不同的信息(每个服务器一个),这使得解决方案不可扩展,易碎和易碎。还有一个策略问题:如果两台服务器都存在身份验证ID,应使用哪种身份验证?
  • 使用支持DN映射的LDAP代理服务器,其中代理服务器可以将dc=opensourceproject,dc=com的查询转换为dc=company,dc=com的查询。这样的产品可以从UnboundID购买。上述政策问题适用。
  • 使用同步服务器与两台服务器上的数据组合在一起,并将结果存放在由LDAP客户端查询的第三台服务器中。上面的策略问题由同步服务器管理。
  • 手动合并两台服务器上的数据。
+0

我将使用手动同步。 – Nihathrael 2012-04-27 11:38:39