Multiples utilisateurs et provider in_memory : un seul fonctionne

Le problème exposé dans ce sujet a été résolu.

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.

+0 -0

Alors ça fait un bout de temps, certes, mais comme c’est seulement cette semaine que j’ai enfin réussi à faire fonctionner les trois comptes après avoir re-généré deux fois la chaîne pour le mot de passe de celui pour lequel je n’avais jusqu’alors jamais réussi, je finis par me demander s’il n’y a pas certains caractères qui posent problème à un moment ou un autre.

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

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