2

Symfony2 Security/ACL API を読みましたが、acl_security_identities を更新/削除する方法が見つかりません。

このコードを使用して、ユーザーのエースを削除します。ユーザーからオブジェクトへのすべてのエースを削除するときに、テーブル 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に代わるものはありますか?

4

1 に答える 1

2

私はあなたの GitHub の問題にコメントし、ユーザーの削除についての開始を提供する PR を作成しました。

私の投稿を確認し、ユーザー名の変更について同様のことを行うことをお勧めします. https://groups.google.com/forum/#!topic/symfony2/mGTXlTWiMs8/discussion

于 2013-06-18T22:07:21.003 に答える