Support #66836
matomo: régression sur la configuration automatique
0%
Description
Lors de la configuration automatique de matomo en recette,
on clique sur "configuration automatique",
et l'appel WS vers matomo qui ajoute un utilisateur renvoie une erreur sur le format du mail.
erreur : matomo: The email doesn't have a valid format.
Demandes liées
Historique
Mis à jour par Nicolas Roche il y a presque 2 ans
- Statut changé de Nouveau à En cours
Il est probable que le mail qui comporte un "+" arrive sur le serveur matomo avec un espace, parce qu'il n'est pas bien échappé.
https://dev.entrouvert.org/issues/66770#note-3 :
Le + dans une URL c'est un espace. Il faut le quoter.
Dans #66833 je propose de passer les paramètres des appels WS dans la query-string afin de pouvoir contrôler dans les logs ce qui est envoyé.
Comme les paramètres passés dans la query-string sont échappés, ça pourrait par ailleurs solutionner ce ticket.
Mis à jour par Nicolas Roche il y a presque 2 ans
- Lié à Bug #66833: matomo: passer les paramètres des appels WS vers matomo dans la query-string ajouté
Mis à jour par Frédéric Péters il y a presque 2 ans
Il est probable que le mail qui comporte un "+" arrive sur le serveur matomo avec un espace, parce qu'il n'est pas bien échappé.
C'est peu probable; requests et cie font correctement le taf.
La vraie première question est de savoir si matomo autorise le + dans l'adresse mail.
Mis à jour par Frédéric Péters il y a presque 2 ans
- Statut changé de En cours à Rejeté
La vraie première question est de savoir si matomo autorise le + dans l'adresse mail.
Et pour ça, tu citais https://github.com/matomo-org/matomo/issues/11796 en disant "Matomo n’accepte plus les adresses avec +" mais c'est l'inverse, le ticket en question signale que ça n'est pas géré, et est résolu. En suivant ça, on peut regarder le diff de la correction, voir dans quelle version ça arrive, a minimal voir si c'est corrigé dans la version déployée chez nous.
La réponse est non. Le patch fait ça :
$this->checkLogin($userLogin); + $email = Common::unsanitizeInputValues($email); $this->checkEmail($email);
or chez nous le code est toujours :
$this->checkLogin($userLogin); $this->checkEmail($email);
Bref, ce qu'il faut c'est mettre à jour matomo vers une version corrigée, soit en montant vers la dernière version, soit en appliquant la correction sur la version en cours.
Tout le reste c'est errements.
Mis à jour par Nicolas Roche il y a presque 2 ans
- Statut changé de Rejeté à En cours
Merci pour l'aide, mais j'ai l'impression que ça ne suffit pas.
J'ai appliqué la modification sur matomo-test.entrouvert.org,
j'ai redémarré nginx et fastcgi puis j'ai re-testé la configuration automatique à Thonon et je tombe toujours sur l'erreur.
Mis à jour par Frédéric Péters il y a presque 2 ans
Il faut vraiment que tu passes à autre chose.
Mis à jour par Frédéric Péters il y a presque 2 ans
- Statut changé de En cours à Rejeté
case in point,
>>> requests.post('https://matomo-test.entrouvert.org', data={'method': 'UsersManager.addUser', 'userLogin': 'test.fred.2', 'password': 'abcdef', 'initialIdSite': '3', 'module': 'API', 'token_auth': '...', 'language': 'en', 'email': 'noreply+test.fred2@entrouvert.org'}).text '<?xml version="1.0" encoding="utf-8" ?>\n<result>\n\t<success message="ok" />\n</result>'