当基本 DN 的最低元素只是组 CN 时,LDAP 搜索过滤器字符串和基本 DN 语法组合以获取匹配“sAMAccountName”的用户?

问题描述

当目标基本 DN 的最低元素是组 CN(实际上不是用户/人员对象)时,有没有办法编写 LDAP 搜索过滤器字符串或基本 DN 语法来获取具有匹配 sAMAccountName 属性的用户?以前从未使用过 LDAP 查询,因此不太了解如何执行此操作。

拥有组 CN 的 AD 路径,例如...

DC=myorg,DC=local
    OU=datagroups
        OU=zones
            CN=group1
            CN=group2
            ...

...并且有两个参数可用于匹配登录字符串:

  • 将被 python-ldap.search_s() function 接受为 OU=zones,OU=datagroups,DC=myorg,DC=local arg 的单个基本 DN(例如 base)。
  • 一个搜索过滤器字符串,用于对该基本 DN 进行操作并返回具有匹配 sAMAccountName 的单个用户/个人,该用户/个人将用作 python-ldap.search_s() function 中的 filterstr 参数。默认格式为 'sAMAccountName={login}'

也试过了

base_dn = OU=zones,DC=local
search_filter = (&(sAMAccountName={login})(|(memberOf=CN=zone1,OU=zones,DC=local)(memberOf=CN=zone2,DC=local)))

无济于事。

有更多经验的人知道我该怎么做吗?我似乎对这种情况有任何误解(从那以后,我不经常使用 LDAP 查询)?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)