我已阅读Symfony2安全/ ACL API但我找不到更新/删除和acl_security_identities的方法。
我使用此代码删除用户的aces。当我从用户删除所有a对象时,我也想删除表中的记录acl_security_identities
$idObjeto = ObjectIdentity::fromDomainObject($promotora);
$acl = $this->get('security.acl.provider')->findAcl($idObjeto);
# All aces of my object
$aces = $acl->getObjectAces();
# user to revoke access
$idUsuario = UserSecurityIdentity::fromAccount($usuario);
foreach($aces as $i => $ace) {
if($idUsuario->equals($ace->getSecurityIdentity())) {
$acl->deleteObjectAce($i);
}
}
$this->get('security.acl.provider')->updateAcl($acl);
这是可能的吗?我无法在API中找到访问该表的示例或文档。
此外我还有这个问题https://github.com/symfony/symfony/issues/5787,因为我使用邮件作为用户名。是否有替代ACL?
答案 0 :(得分:2)
我在您的GitHub问题中发表了评论,并提出了一个关于删除用户的开始。
我建议您检查我的帖子并为修改其用户名做类似的事情。 https://groups.google.com/forum/#!topic/symfony2/mGTXlTWiMs8/discussion