使用LDAP链接身份验证

使用LDAP链接身份验证,ldap,openldap,Ldap,Openldap,我有以下两个ldap(slapd)服务器: company.com ou=用户,dc=公司,dc=com uid=雇员1 uid=雇员2 opensourceproject.com ou=users,dc=opensourceproject,dc=com uid=member1 uid=member2 我想要实现的是,客户机(bugzilla、svn等)可以为两台服务器上的用户透明地查询opensourceproject.comldap。查询可以是:“check authenti

我有以下两个ldap(slapd)服务器:

company.com

  • ou=用户,dc=公司,dc=com
    • uid=雇员1
    • uid=雇员2
opensourceproject.com

  • ou=users,dc=opensourceproject,dc=com
    • uid=member1
    • uid=member2
我想要实现的是,客户机(bugzilla、svn等)可以为两台服务器上的用户透明地查询opensourceproject.comldap。查询可以是:“check authenticationof uid=employee1”,由客户端发送到opensourceproject.comldap服务器。服务器现在应该查看他的列表,查看用户是否可用,如果没有链接到company.comldap,并查看那里,如果存在:返回结果

有可能做到这一点吗?大多数客户都需要一个搜索库来查找成员,因此我可能会在ou=users,dc=opensourceproject,dc=com上进行搜索,这在company.com服务器上不存在,所以我不确定如何连接这两棵树。如果我使用一个空的搜索库,这会起作用吗?我想我可能会在装订方面遇到各种各样的麻烦


是否可以通过ldap实现这一点?如果是,如何解决?

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

  • LDAP客户端必须执行两次搜索,一次使用与一台服务器上的用户位置相对应的基本对象,另一次使用与另一台服务器上的用户位置相对应的基本对象;必须为每个服务器调整要检索的搜索范围、筛选器和属性。此解决方案虽然可行,但形式不佳,因为LDAP客户端必须知道两组不同的信息(每台服务器一组),这使得解决方案无法扩展、脆弱和脆弱。还有一个策略问题:如果两台服务器都存在身份验证ID,那么应该使用哪种身份验证
  • 使用支持DN映射的LDAP代理服务器,其中代理服务器可以将
    dc=opensourceproject,dc=com
    的查询转换为
    dc=company,dc=com
    的查询。此类产品可从以下地点购买:。上述政策问题适用
  • 使用同步服务器组合两台服务器上的数据,并将结果存放在LDAP客户端查询的第三台服务器中。然后由同步服务器管理上面的策略问题
  • 手动组合两台服务器上的数据

您确定跨两个目录的UID帐户的唯一性吗?您解决了这个问题吗?