Doctrineとカスタムユーザプロバイダでchain_providerを使用する場合、プロバイダの認証プロバイダも使用すると考えられますか?chain_providerと認証プロバイダ
後述のように私は、chain_providerのカスタムユーザプロバイダを使用して問題を得た:
providers:
chain_provider:
providers: [doctrine, egzakt_backend_ldap]
doctrine:
entity: { class: Egzakt\Backend\UserBundle\Entity\User }
egzakt_backend_ldap:
id: egzakt_backend_ldap.security.user.provider
firewalls:
secured_area:
pattern: /admin/
form_login:
provider: chain_provider
check_path: /admin/login_check
login_path: /admin/login
を問題はegzakt_backend_ldapユーザプロバイダが正しく呼び出されることではなく、優れた認証プロバイダによって。工場でサービスとして宣言した "LdapAuthenticationProvider"ではなく、 "Symfony \ Component \ Security \ Core \ Authentication \ ProviderDaoAuthenticationProvide r"によって呼び出され、常に "提示されたパスワードは無効です"という理由で返されます。資格情報を検証するために良い認証プロバイダを使用していません。
しかし、エントリポイントを直接使用している場合は動作しています。問題は、教義が失敗した場合、それが戻っLDAPに落ち、私がログインする教義とLDAPの両方を使用したいということです。
firewalls:
secured_area:
pattern: /admin/
egzakt_backend_ldap:
check_path: /admin/login_check
login_path: /admin/login
このようにすれば、優れた認証プロバイダとユーザプロバイダを使用しています。
誰かが私が迷っていることについて考えていますか?