我想将给用户的权限扩展到实体。如何更改Spring Security ACL中的权限?
我可以通过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权限?