Symfony ACL を使用すると、エンティティへのアクセスを許可し、それを確認できます。
if (false === $securityContext->isGranted('EDIT', $comment)) {
throw new AccessDeniedException();
}
ただし、データベースに何千ものエンティティがあり、ユーザーがそのうちの 10 個しかアクセスできない場合、すべてのエンティティをメモリにロードしてハイドレートしたくありません。
ユーザーが (SQL レベルで) アクセスできるエンティティのみをフィルタリングしながら、単純な "SELECT * FROM X" を実行するにはどうすればよいですか?