新しい認証プロバイダーを定義していて、パスワード エンコーダー ファクトリへのアクセスが必要だったので、プロバイダーをサービスとして定義し、エンコーダーを挿入するように要求しました。これが私のサービス定義です:
services:
wsse.security.authentication.provider:
class: Fdi\CliperestBundle\Security\Authentication\Provider\WsseProvider
arguments: [@security.encoder_factory,'', %kernel.cache_dir%/security/nonces]
したがって、プロバイダー コンストラクターが type のオブジェクトを取得することを期待していましたSymfony\Component\Security\Core\Encoder\EncoderFactory
。しかし、私はSymfony\Component\Security\Core\User\ChainUserProvider
代わりに取得しています!!
なぜ私がこのオブジェクトを取得しているのか、代わりに EncoderFactory を取得するにはどうすればよいか知っている人はいますか? ところで、私は FOSUserBundle を使用していますが、これと関係があるかどうかはわかりません