ユーザの管理とSymfony2での権限に関する少しの心配があります。Symfony2ユーザ権限管理
は私に説明してみましょう:
私はFOSUserBundleを設定します。
著作権管理である私が今したいのですがどのような。私はエンティティ「ポスト」を持っています。 私は以下の役割を持つユーザーを持っています。
ROLE_GUEST - VIEW,RATE
ROLE_USER - VIEW,CREATE,RATE,EDIT_OWN
ROLE_EDITOR - VIEW,CREATE,RATE,EDIT,DELETE
特定の操作を実行するために各ロールにアクセス許可を設定する必要があります。
ありがとうございました:)
、編集のように同じエンティティに削除しないが、それが使用することをお勧めではありません[有権者](http://symfony.com/doc /current/cookbook/security/voters.html)にアクセス許可を確認しますか? –
@Bart Bartomanそれはあなたのアプリケーションのアーキテクチャに依存します。アプリのさまざまな場所でアクションを制限することができます。それは、操作が許可されているかどうかを判断するために必要な複雑さと情報に依存します。したがって、残りのAPIを開発しているとすれば、役割に基づいてルーティングレベルからアクセスを切断できますが、ACLのものが必要な場合は、まずACLが制御しているデータオブジェクトを取得する必要があります。それを行う方法になる可能性があります。だからこそ、私はちょうどより複雑な制限ルールが必要な場合に、最後に有権者に言及しました。 –
最後に、最適化するためには、アクセスが制限されていることがわかったらすぐにアクセスを制限するのが最善の方法です。実際には、エンティティのプロパティを編集するなどの複雑な制限ルールを使用して、低レベルのものを制限したい場合にのみ、私は有権者しか使用しませんでした。しかし、必要に応じて、直接アプローチから簡単に投票者に広げることができます。 –