![OpenLDAP の設定に苦労しています (AWS EC2 上)](https://rvso.com/image/697020/OpenLDAP%20%E3%81%AE%E8%A8%AD%E5%AE%9A%E3%81%AB%E8%8B%A6%E5%8A%B4%E3%81%97%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%20(AWS%20EC2%20%E4%B8%8A).png)
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
、それらも変更する必要があります。