You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When you delete a security identity with MutableAclProvider::deleteSecurityIdentity(), all ACL entries associated with this security identity are deleted (cascade).
There are 2 problems arising from this behavior:
First, we get an error when we add, modify or delete other ACL entries, if the deleted ACL entries are not the last (the PR #24 partially corrects this problem, but it missing the change to the methods MutableAclProvider::updateNewFieldAceProperty() and MutableAclProvider::updateOldFieldAceProperty().
Secondly, when you add another ACL entry for the same object identifier, sometimes the value of ACE Order is the same as another ACL entry. This happens when you delete a cascading ACL entry that is not the last in order of ACL entries.
Last, it is impossible to reproduce the bug in unit tests with SQLite, because removing cascade not working. The result is that the ACL entry has a security identity with a null value in the database, and that the method findAcls create a RoleSecurityIdentity instance with an empty role name "".
I close this issue to clean my list and because this library no longer seems to be maintained. But do not hesitate to reopen or merge directly the PR #29 if you wish.
When you delete a security identity with
MutableAclProvider::deleteSecurityIdentity()
, all ACL entries associated with this security identity are deleted (cascade).There are 2 problems arising from this behavior:
First, we get an error when we add, modify or delete other ACL entries, if the deleted ACL entries are not the last (the PR #24 partially corrects this problem, but it missing the change to the methods
MutableAclProvider::updateNewFieldAceProperty()
andMutableAclProvider::updateOldFieldAceProperty()
.Secondly, when you add another ACL entry for the same object identifier, sometimes the value of ACE Order is the same as another ACL entry. This happens when you delete a cascading ACL entry that is not the last in order of ACL entries.
Last, it is impossible to reproduce the bug in unit tests with SQLite, because removing cascade not working. The result is that the ACL entry has a security identity with a null value in the database, and that the method
findAcls
create aRoleSecurityIdentity
instance with an empty role name""
.Example:
It's really very disturbing in production.
The text was updated successfully, but these errors were encountered: