2012-01-23 15 views
4

私は複数のクライアントを持つアプリケーションをdelevopingしています。ユーザーは、それぞれ異なる役割を持つ複数のクライアントにアクセスできます。例えば、ユーザAは、クライアントC1が、クライアントC2ためROLE_YYためROLE_XXを有しています。Symfony2:FosUserBundleのマルチテナントのロール

私の知る限りでは、FosUserBundle店舗の列にユーザーのロール役割(デフォルトテーブルfos_user)ので、この構造は、私のニーズには適していません。

私はroles managementでrealatedドキュメントを読んでましたが、関連するものはありませんので、私はそれがの範囲FosUserBundle?を超えた機能だと思います。

私はそれら(クライアント、ユーザ、ロール)を関連付ける追加表を作成することを考えていましたが、私はFOSの専門家ではないので、これが正しい方法であるかどうかは本当に分かりません。それとも、私は何かを逃しています。任意のヒントが評価されています!

答えて

5

あなたの要件は、Symfonyのセキュリティロールシステムが提供するものを上回ります。 ACLを維持するか、アクセス制御ロジックをカスタムセキュリティ投票者にカプセル化する必要があります。私は最近、後者のアプローチについて書いています。

http://kriswallsmith.net/post/15994931191/symfony2-security-voters

+0

はい!これを実装する正しい方法だと思われます。ありがとう、私はそれを試してみましょう! –

関連する問題