Authentification impossible avec utilisateur dans BDD
Bonjour à tous,
Je développe une application web avec SF et Doctrine 2. Je configure une authentification d'utilisateur avec une base de donnée.
Donc j'ai :
Une entité User qui implémente UserInterface
Je charge un utilisateur/administrateur via /loaduser d'un controlleur :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
<?php
namespace Cds\UsersBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Cds\OCUserBundle\Entity\User;
class UsersController extends Controller
{
public function loaduserAction()
{
$u = new User();
$u->setUsername('test3');
$u->setSalt(' ');
$u->setPassword('test3');
$u->setRoles(array('ROLE_ADMIN'));
$em = $this->getDoctrine()->getManager();
$em->persist($u);
$em->flush();
return $this->render('CdsUsersBundle:Loaduser:loaduser.html.twig');
}
} |
J'ai modifié mon fichier security.yml :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
security:
encoders:
Symfony\Component\Security\Core\User\User: plaintext
Cds\OCUserBundle\Entity\User: plaintext
role_hierarchy:
ROLE_ADMIN: ROLE_USER
ROLE_SUPER_ADMIN: [ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]
providers:
main1:
entity: { class: Cds\OCUserBundle\Entity\User, property: username }
firewalls:
main:
pattern: ^/
anonymous: true
provider: main1
form_login:
login_path: login
check_path: login_check
default_target_path: /
logout:
path: logout
target: /
access_control:
#- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY, requires_channel: https } |
Je regarde dans ma BDD et je vois bien les utilisateurs ajouté via /loaduser.
Mais quand je vais sur /login, et que je rentre les identifiants présent dans la BDD des utilisateurs, il me met "Bad credentials"
Je n'ai aucune erreur, ni exception d'affichée. Le problème est présent pour les utilisateurs/administrateur.
Il doit y avoir un problème dans les configuration, mais je vois pas où.
Merci à tous :) !!