ユーザーを複数の会社にリンクできるアプリケーションがあります。会社との manyToMany 関係は、Associate と呼ばれる識別エンティティです。
この Associate エンティティに、私の FOSUserBundle User エンティティとまったく同じロール機能を付与したいと考えています。重要 : ユーザーが 1 つの会社の role_manager を持っている場合、そのユーザーが属する別の会社の特定の機能にアクセスする権限も付与されるべきではありません。
これを行うためのきれいな方法はありますか?たとえば、$this->getUser->getAssociate->hasRole('ROLE_MANAGER') が true かどうかを確認したいと思います。
自分のエンティティ Associate に役割配列を与えるとどうなりますか? 私はそれが十分に安全ではないことを読みましたか?なんで?とにかく私のユーザーが FOS セキュリティ ログイン チェックを通過しなければならない場合、そのセキュリティを破るために誰かが何ができるでしょうか?
投票者の使用が提案されている記事を見つけました。しかし、ルートをフィルタリングするのではなく、ユーザーと会社の間のリンクに対して条件を確認したいので、有権者が解決策である場合、どのように使用しますか?
編集:役割を含まない、または異なるロジックを使用したより良い解決策が存在する場合、私はそれについて学ぶことに興味があります!!