Witajcie,
Mam problem z przydzieleniem permisji CREATE z użyciem Springa ACL. Inne permisje, takie jak WRITE, READ przydziela się do istniejących rekordów w bazie (np. READ do rekordu o id 10 w tabeli actions). Problem w tym, że permisję CREATE potrzebuję przydzielić do nie istniejącego obiektu, tak żebym mógł ją sprawdzić podczas dodawania nowego obiektu. Kod, który pozwala mi na przydzielenie dowolnego uprawnienia:
ObjectIdentity objectIdentity = new ObjectIdentityImpl(Action.class, 1L);
MutableAcl acl;
try {
acl = aclService.readAclById(objectIdentity);
} catch(NotFoundException ex) {
acl = aclService.createAcl(objectIdentity);
}
acl.insertAce(acl.getEntries().size(), BasePermission.READ, new PrincipalSid("foo"), true);
aclService.updateAcl(acl);
Próbowałem wstawić null zamiast id w konstruktorze ObjectIdentityImpl, niestety parametr nie może mieć wartości null
Pomoże ktoś?