在 AWS EC2 上,OpenLDAP 配置困难

在 AWS EC2 上,OpenLDAP 配置困难

我一直在使用 AWS EC2 在 Linux 实例上配置 LDAP 服务器。到目前为止,我已成功设置 LDAP 和 phpLDAPadmin 以协同工作。

我已经创建了用户和组“组织单位”。我已将用户和组添加到这些“OU”。现在我想将 LDAP 树的特定部分的访问权限授予“组”中的“用户”成员。这是我到目前为止无法配置的...

我的 LDAP 树如下所示:

+--> dc=www,dc=website,dc=com (3)
  ---> cn=admin
  +--> ou=groups (4)
  | ---> cn=admin_users
  | ---> cn=app1_users
  | ---> cn=app2_users
  | ---> cn=basic_users
  +--> ou=users (3)
  | ---> cn=user1
  | ---> cn=user2
  | ---> cn=user3

假设我将 user1 + user2 添加到“app1_users”的“memberUid”列表中,将 user2 + user3 添加到“app2_users”的“memberUid”列表中。

我想:

  • cn=admin 对树有完全权限/访问权限
  • app1_users 可以连接(phpLDAPadmin)并将新成员添加到组本身
  • 对于 app2_users 的用户来说也是如此

连接的用户(在 phpLDAPadmin 上)应该只能看到他所属的树(和子树)。

这是我尝试过的 ACI(但显然不起作用):

access to attrs=shadowLastChange
    by self write
    by dn="cn=admin,dc=www,dc=website,dc=com" write
    by * read

access to attrs=userPassword
    by self write
    by dn="cn=admin,dc=www,dc=website,dc=com" write
    by anonymous auth by * none

access to dn.base=""
    by * read

access to dn.subtree="cn=app1_users,ou=groups,dc=www,dc=website,dc=com"
    by group.base="cn=app1_users,dc=www,dc=website,dc=com" write
    by dn.base="cn=admin,dc=www,dc=website,dc=com" write 
    by * none

access to dn.subtree="cn=app2_users,ou=groups,dc=www,dc=website,dc=com"
    by group.base="cn=app2_users,dc=www,dc=website,dc=com" write
    by dn.base="cn=admin,dc=www,dc=website,dc=com" write 
    by * none

access to *
    by self write
    by dn="cn=admin,dc=www,dc=website,dc=com" write
    by * read

我的配置有问题吗?

答案1

对我来说,以下群组成员资格语法有效:

access to dn.subtree="cn=app2_users,ou=groups,dc=www,dc=website,dc=com"
    by group/groupOfNames/member.exact="cn=app2_users,dc=www,dc=website,dc=com" write
    by dn.base="cn=admin,dc=www,dc=website,dc=com" write 
    by * none

我不确定这是否能解决你的问题,因为我不知道它是如何phpLDAPadmin工作的。

如果phpLDAPadmin有自己的访问控制规则,您也必须修改它们。

相关内容