Login laborieux lors de la restauration des cles #5204

Closed
opened 2 months ago by cerdic · 1 comments
cerdic commented 2 months ago
Owner

Sur un site que j'ai déménagé sans mon fichier cles.php, je dois saisir une première fois mon mot de passe de webmestre pour qu'il me restaure les clés, tout en m'affublant d'un message "erreur de login".

Et alors si je resaisi une seconde fois mon mot de passe, c'est bon j'arrive à me loger car il a bien le ficher cles cette fois ci.

La faute a une ligne manquante pour relire le secret des auth après avoir restauré le fichier cles.php

diff --git a/ecrire/auth/spip.php b/ecrire/auth/spip.php
index 60fe9566e..15a5bd39c 100644
--- a/ecrire/auth/spip.php
+++ b/ecrire/auth/spip.php
@@ -101,6 +101,7 @@ function auth_spip_dist($login, $pass, $serveur = '', $phpauth = false) {
 				if ($cles->restore($row['backup_cles'], $pass, $row['pass'], $row['id_auteur'])) {
 					spip_log('Les cles secretes ont ete restaurées avec le backup du webmestre #' . $row['id_auteur'], 'auth' . _LOG_INFO_IMPORTANTE);
 					$cles->save();
+					$secret = $cles->getSecretAuth();
 				}
 				else {
 					spip_log('Pas de cle secrete disponible (fichier config/cle.php absent ?) mais le backup du webmestre #' . $row['id_auteur'] . " n'est pas valide", 'auth' . _LOG_ERREUR);

Sur un site que j'ai déménagé sans mon fichier `cles.php`, je dois saisir une première fois mon mot de passe de webmestre pour qu'il me restaure les clés, tout en m'affublant d'un message "erreur de login". Et alors si je resaisi une seconde fois mon mot de passe, c'est bon j'arrive à me loger car il a bien le ficher cles cette fois ci. La faute a une ligne manquante pour relire le secret des auth après avoir restauré le fichier `cles.php` ``` diff --git a/ecrire/auth/spip.php b/ecrire/auth/spip.php index 60fe9566e..15a5bd39c 100644 --- a/ecrire/auth/spip.php +++ b/ecrire/auth/spip.php @@ -101,6 +101,7 @@ function auth_spip_dist($login, $pass, $serveur = '', $phpauth = false) { if ($cles->restore($row['backup_cles'], $pass, $row['pass'], $row['id_auteur'])) { spip_log('Les cles secretes ont ete restaurées avec le backup du webmestre #' . $row['id_auteur'], 'auth' . _LOG_INFO_IMPORTANTE); $cles->save(); + $secret = $cles->getSecretAuth(); } else { spip_log('Pas de cle secrete disponible (fichier config/cle.php absent ?) mais le backup du webmestre #' . $row['id_auteur'] . " n'est pas valide", 'auth' . _LOG_ERREUR); ```
cerdic closed this issue 2 months ago
Owner

Ha super, je viens justement de tomber sur l'erreur de login en effectuant des tests sur la suppression du secret_des_auth :p

Ha super, je viens justement de tomber sur l'erreur de login en effectuant des tests sur la suppression du secret_des_auth :p
Sign in to join this conversation.
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date

No due date set.

Dependencies

This issue currently doesn't have any dependencies.

Loading…
There is no content yet.