代码之家  ›  专栏  ›  技术社区  ›  Mohamed Benkedadra

如何在LDAP中获取用户组

  •  0
  • Mohamed Benkedadra  · 技术社区  · 6 年前

    我在phpldapadmin中使用openldap,并试图检查某个用户的组。 这是我的计划…

    Ldap Scheme

    这是我试过的,但没用

    docker-compose exec openldap ldapsearch -x -H "ldap://openldap" -D "cn=admin,dc=openldap" -w admin -b "cn=root,ou=django,dc=openldap" '(&(objectClass=*)(member=cn=superuser,ou=groups,dc=openldap))'
    

    PS:我刚接触LDAP, this 是我使用的图像吗

    1 回复  |  直到 6 年前
        1
  •  1
  •   Ludovic Poitou    6 年前

    有大量关于LDAP和查询的文献,解释了如何使用示例搜索组。

    首先,basedn(-b)应该是层次结构的顶部: dc=openldap .

    其次,您正在从组中搜索,因此筛选器应包括 (objectclass=groupOfNames)

    最后,您要搜索的是用户所属的组,并且过滤器应该是 (member=cn=root,ou=django,dc=openldap)

    结果查询是:

    ldapsearch -x -H "ldap://openldap" -D "cn=admin,dc=openldap" -w admin -b "dc=openldap" '(&(objectClass=groupOfNames)(member=cn=root,ou=django,dc=openldap))'

    这将返回组条目。如果您只对名称感兴趣,请添加   dn 在查询结束时。