【发布时间】:2011-08-29 19:51:11
【问题描述】:
我想将授予用户的权限扩展到实体。
我可以通过MutableAclService 创建 ACL。
MutableAcl acl = this.mutableAclService.createAcl(new ObjectIdentityImpl(entity));
acl.setOwner(SYSTEM_PRINCIPAL_SID);
acl.insertAce(0, permission, grantToSid, true);
this.mutableAclService.updateAcl(acl);
但我不知道如何更改 ACL。例如,如果用户对实体具有读取权限,我想为他提供额外的写入权限。 或者授予其他用户相同的权限。
我的第一次尝试是调用MutableAclService.createAcl 两次,但失败了:
org.springframework.security.acls.model.AlreadyExistsException:对象身份'org.springframework.security.acls.domain.ObjectIdentityImpl [类型:test.Entity;标识符:3]' 已经存在
好的,接缝是正确的,错误的方式。但是那怎么办呢? 如何更改已经定义了一些权限的实体的 acl 权限?
【问题讨论】:
标签: java spring-security acl