- 论坛徽章:
- 0
|
dc=com
dc=example
ou=employee
cn=department1
cn=department2
cn=Manager,cn=department1,ou=employee,dc=example,dc=com (title=manager)
cn=Manager,cn=department2,ou=employee,dc=example,dc=com (title=manager)
cn=employee1,cn=department1,ou=employee,dc=example,dc=com (title=engineer)
cn=employee2,cn=department1,ou=employee,dc=example,dc=com (title=engineer)
cn=employee3,cn=department1,ou=employee,dc=example,dc=com (title=engineer)
ou=customer
cn=customer1
cn=customer2
dn: cn=Manager,cn=department1,ou=employee,dc=example,dc=com
cn: Manager
cn: department1
cn: name
uid: name
title: manager
dn: cn=employee1,cn=department1,ou=employee,dc=example,dc=com
cn: employee1
cn: department1
cn: name
uid: name
title: engineer
## department1的Manager可以wirte本部门的所有customer信息
##所有员工都可以write自己的customer记录
##所有用户具有read权限
access to dn.subtree="ou=customer,dc=example,dc=com" filter=(cn=department1)
by dn="cn=Manager,cn=department1,ou=employee,dc=example,dc=com" write
by self write
by users read
## department2的Manager可以wirte本部门的所有customer信息
##所有员工都可以write自己的customer记录
##所有用户具有read权限
access to dn.subtree="ou=customer,dc=example,dc=com" filter=(cn=department2)
by dn="cn=Manager,cn=department2,ou=employee,dc=example,dc=com" write
by self write
by users read
## department3的Manager可以wirte本部门的所有customer信息
##所有员工都可以write自己的customer记录
##所有用户具有read权限
access to dn.subtree="ou=customer,dc=example,dc=com" filter=(cn=department3)
by dn="cn=Manager,cn=department2,ou=employee,dc=example,dc=com" write
by self write
by users read
这样一来,不需要修改ACL除非公司的部门减少或者增加,这种改动应该是非常小的。
当新的员工加入的时候也不需要修改ACL, 因为员工的权限是read或者write自己加入的客户信息.
NOTE: 唯一的要求就是,每个员工自己的客户纪录的OWNER必须是自己。这样(by self write)才能生效
[ 本帖最后由 sky天空之城 于 2009-3-23 14:32 编辑 ] |
|