security - Symfony2 version 2.0.23, login with users from database always return: 'The presented password is invalid' -


i'm trying set 2 firewall 2 different providers , encoders in security.yml looks this:

security:     encoders:         devsign\userbundle\entity\agentuser:             algorithm: sha512             iterations: 5000             encode_as_base64: true         devsign\userbundle\entity\pressuser:             algorithm: sha512             iterations: 5000             encode_as_base64: true      providers:         agent_secured_area:             entity: {class: devsign\userbundle\entity\agentuser } # using custom repository login username or email, details in agentuserrepository.php          press_secured_area:             entity: {class: devsign\userbundle\entity\pressuser, property: username }      firewalls:         agent_secured_area:             pattern: /(it|en)/reserved/             provider: agent_secured_area             anonymous: ~             form_login:                 check_path: /it/reserved/login-check                 login_path: /reserved/login             logout:                 path:   /reserved/logout                 target: /         press_secured_area:             pattern: /(it|en)/press/             provider: press_secured_area             anonymous: ~             form_login:                 check_path: /it/press/login-check                 login_path: /press/login             logout:                 path:   /press/logout                 target: /      access_control:         agent_login:             path: /reserved/login             roles: is_authenticated_anonymously         agent_register:             path: /reserved/register             roles: is_authenticated_anonymously         agent_area:             path: /(it|en)/reserved/.*             roles: role_agent         press_login:             path: /press/login             roles: is_authenticated_anonymously         press_register:             path: /press/register             roles: is_authenticated_anonymously         press_area:             path: /(it|en)/press/.*             roles: role_press  

i no exception when try login against agent_secured_area always: 'the presented password invalid'.

i created first user password , salt using code in controller:

$factory = $this->get('security.encoder_factory');     $user = new \devsign\userbundle\entity\agentuser();      $encoder = $factory->getencoder($user);     $salt = $user->getsalt();     $password = $encoder->encodepassword('grab', $salt);     die("pwd: $password - salt: $salt"); 

and fill database field password , salt echoed values.

can spot error?

update 1

i made test setting in config_dev.yml:

web_profiler:     toolbar: true     intercept_redirects: true     verbose: true 

1) try go /it/reserved/info access protected i'm redirected correctly /it/reserved/login

2) try login /it/reserved/login posting form /it/reserved/login-check

3) web_profile: intercepts_redirects: true can see debug toolbar in /it/reserved/login-check , i'm correctly authenticated correct role: role_agent. way looking in doctrine section of profiler see 2 queries against user table, first 1 parameter username null , second 1 correct username.

4) i'm redirected /it/reserved/info reason see single query against user table parameter username null. infact in /it/reserved/info i'm not authenticated anymore. i'm redirected again /it/reserved/login.

so think problem query parameter username null, knows it's coming from? maybe misconfiguration on security.yml?


Comments