1

私は、次のことに対してユーザーを検証するマルチテナントサービスを行っています。

ユーザー名、パスワード、サブドメイン

FOSUserBundle を使用している私

UserProvider を使用して、呼び出されたドメインから認識し、ユーザーに見つけさせたいと思います。

問題は、コンテナを試したり、取得したインジェクションを設定したりしても、@request にアクセスできないことです。

「ScopeWideningInjectionException: スコープ拡大インジェクションが検出されました」

FOSUserBundle を拡張して、ユーザー名を検証 (ユーザー ログインを作成) するときにリクエストを認識できるようにする適切な方法はありますか?

4

3 に答える 3

0

「UserProvider のスコープの変更」を試しましたか? http://symfony.com/doc/current/cookbook/service_container/scopes.html

my_user_provider:
    class: Acme\HelloBundle\UserProvider
    scope: request
    arguments: [@request]

この場合うまくいくかどうかはわかりません。セキュリティはトリッキーです。

別の方法として、REQUEST リスナーを作成し、サブドメインを取得してからユーザー プロバイダーに挿入することもできます。

于 2013-03-31T13:46:53.383 に答える