【发布时间】:2019-03-17 16:13:56
【问题描述】:
使用 CentOS 7.5、Apache 2.4.6。在虚拟机中运行。没有 SSL。
我关注https://linuxhostsupport.com/blog/how-to-install-ldap-on-centos-7/ 并配置了 OpenLDAP。
我创建了用户并使用 ldap_bind($ds, $userid, $password) 检查是否存在有效的用户和密码。
现在我正在尝试查找用户是否是特定组的成员。为此,我查看了ldap query for group members(以及其他)
我认为我在创建组时犯了一个错误。
我应该创建一个组织角色、组还是 posixGroup?由于最终目标是检查哪些用户有权使用其中的哪些应用程序和功能(添加/更新/删除/等),所以我会说organizationRole 是要做的事情。目前,我使用:
groups.ldif:
dn: cn=MyAppUsers,dc=mydept,dc=mycompany
objectClass: top
objectclass: posixGroup
cn: Authorized App1 Users
description: Users allowed to use App1
users.ldif:
dn: cn=MyAppUsers,dc=mydept,dc=mycompany
changetype: modify
add: memberUid
memberUid: cn=user1,ou=People,dc=mydept,dc=mycompany
memberUid: cn=user2,ou=People,dc=mydept,dc=mycompany
我在 ldap_search($ds,$basedn,$filter) 中尝试了不同的过滤器组合,但似乎找不到正确的组合。所以,我认为错误的不是查询,而是创建组的方式。
【问题讨论】:
-
根据我帖子中的第二个链接,此用户和组成员资格将由 PHP 验证。我用来检查组成员资格的 PHP 代码是按照该链接。我的代码无法返回组,因此,我添加了这个标签。此外,据我了解,组/角色的类型取决于它的使用位置;就我而言,PHP。
标签: php centos7 openldap ldap-query