Я хочу создать пару пользователей-администраторов, у которых есть доступ для создания / удаления пользователей в определенной группе / организационном подразделении. Например,
User: uid=testadmin, ou=people, dc=my,dc=net
Должен иметь доступ для создания новых пользователей / удаления пользователей в
ou=People,dc=my,dc=net
Я пробовал с ACI ниже, но не работал
(target = "ldap:///ou=People,dc=my,dc=net")(targetattr = "*") (version 3.0;acl "testadmin Permissions";allow (proxy)(userdn = "ldap:///uid=testadmin,ou=people,dc=my,dc=net");)
Я могу добавлять пользователей-администраторов из консоли сервера каталогов, но эти пользовательские данные не хранятся в файлах ldif, а хранятся только в двоичной базе данных в / var / lib / dirsrv / slap-ldap / db /. Единственная проблема в том, что у этих пользователей есть все права, и я не знаю, как ограничить их доступ.
Ответ получился очень простым и логичным. Чтобы предоставить ACI для определенного OU. В этом случае пользователь sm имеет все права в каталоге ou = Support Group.
(targetattr = "*")
(target = "ldap:///ou=Support Group,dc=my,dc=net")
(version 3.0;
acl "sm aci";
allow (all)
(userdn = "ldap:///uid=sm,ou=Support Group,dc=my,dc=net")
;)
цель: указывает, где применить правило.
targetattr: Может использоваться для ограничения доступа к различным атрибутам записи. Например, вы, пользователь "sm", не имеющий доступа к изменению пароля, можете указать здесь такую вещь.
позволять (): указывает разрешение
последний userdn (правило привязки): Указывает, у кого есть права. Таким образом, вы можете легко предоставить доступ другим пользователям для управления их собственными группами. Учетные данные пользователей.
Протестировано, будет работать отлично: -
(targetattr = "*") (target = "ldap:///ou=linux,dc=pramod,dc=com")(version 3.0;acl "pramod aci";
allow (write)(userdn = "ldap:///uid=pkumar,ou=linux,dc=pramod,dc=com")
;)
Согласно этому acl пользователь pkumar может изменять все атрибуты всех отличительных имен (dn), принадлежащих организационной единице (ou) linux. Если вы хотите предоставить полные права, просто измените (write)
к (all)
. Если вы хотите дать права на базу dn просто удалите ou=linux
от цели.