Multiples utilisateurs et provider in_memory : un seul fonctionne

L’auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

Bonjour !

J’ai une application Symfony qui utilise le provider in_memory pour sécuriser certaines parties — j’ai trois roles. Histoire de sécuriser un peu le truc, j’ai fait en sorte que les mots de passe soient dans le fichier .env, et la partie de configuration est faite dans parameters.yaml, dont j’importe la clé comme ci-dessous.

security:

  providers:
    in_memory:
      memory:
        users: "%application_users%"
config/packages/security.yaml
parameters:
  application_users:
    user1:
      password: '%env(USER1_PASSWORD)%'
      roles: ROLE_1
    user2:
      password: '%env(USER2_PASSWORD)%'
      roles: ROLE_2
    user3:
      password: '%env(USER3_PASSWORD)%'
      roles: ROLE_3
config/parameters.yaml

Seulement, seul l’utilisateur 3 permet de s’authentifier sur l’application, les autres ne semblent pas être trouvés.

Dans un premier temps, j’ai évidemment pensé au fait que les mots de passe que j’avais mis pour les autres utilisateurs n’étaient pas corrects.
Puis j’ai pensé à l’ordre de définition. Et enfin je me suis demandé si cette manière de faire posait problème, étant donné que j’importe un tableau.

Mais malgré le re-chiffrement des mots de passe (directement depuis le serveur utilisé, des fois que), des changements d’ordre dans la définition des utilisateurs et une tentative en ayant mis tout directement dans le fichier, il n’y a toujours que le même utilisateur qui permette de se connecter. Les rôles sont corrects, l’utilisation des guillemets simples ou doubles pour les chaînes en YAML ne devrait pas poser de problème (sans quoi aucun utilisateur ne fonctionnerait à la base).

La dernière tentative qui me vienne à l’esprit maintenant serait d’utiliser des mots de passe en clair, je verrai la chose plus tard.

Est-ce que quelqu’un a déjà rencontré ce genre de souci et aurait circonvenu la chose ?

Merci  :)

P.S. : l’application a migré de Symfony 3.4 à 5.0 et le souci avec.

Edit

Bon, une fois de plus, je ne saurai pas le fin mot de l’histoire. Je re-génère un aggrégat pour un des utilisateurs avec lequel je n’arrivais pas à avoir accès, et là ça passe… Je me souviens avoir copié le mot de passe depuis le script de chiffrement dans le formulaire.

Édité par Ymox

Evitez qu’on vous dise de les lire : FAQ PHP et SymfonyTutoriel WAMP • Cliquez 👍 pour dire merci • Marquez vos sujets résolus

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte