[spip-dev] Re: [spip-commit] CVS: spip/ecrire inc_base.php3,1.34,1.35 inc_mail.php3,1.12,1.13 inc_version.php3,1.72,1.73

fil-commit wrote:

Update of /home/spip-cvs/spip/ecrire
In directory miel:/tmp/cvs-serv22340/ecrire

Modified Files:
  inc_base.php3 inc_mail.php3 inc_version.php3 Log Message:
Suite et fin (en ce qui me concerne et sauf bugs) de l'identifiation des visiteurs sur le site public et privé ; les oublieux peuvent solliciter un cookie qui leur est envoyé par mail et qui leur permet de modifier leur mot de passe ; les inscriptions ne sont proposées QUE SI il y a motif à s'inscrire (présence de forums sur abo ET/OU inscriptions à l'espace privé. Voilà quoi !

Heu, si j'ai accès en lecture à la base, ça veut dire que je peux
me faire passer par un admin et récupérer son cookie pour changer
le mot de passe, c'est ça ?

Pouvoir récupérer un accès en lisant la base, c'est pas ce qu'on
voulait éviter (entre autres) ?

Heu, si j'ai accès en lecture à la base, ça veut dire que je peux
me faire passer par un admin et récupérer son cookie pour changer
le mot de passe, c'est ça ?

Si tu as un accès en lecture "live" à la base, oui.

Pouvoir récupérer un accès en lisant la base, c'est pas ce qu'on
voulait éviter (entre autres) ?

Non, pas à ce point : l'idée est que si tu tombes sur une vieille copie de
la base (sauvegarde, fichier test) tu ne peux pas l'exploiter.

-- Fil

Heu, au fait, je ne comprends pas bien l'intérêt d'avoir transformé
le formulaire de login en #LOGIN, vu que ça produit une page HTML
complète (il y a même des Header() devant).... ?

Antoine wrote:

Heu, au fait, je ne comprends pas bien l'intérêt d'avoir transformé
le formulaire de login en #LOGIN, vu que ça produit une page HTML
complète (il y a même des Header() devant).... ?

C'est même carrément plus gênant, en fait. Voici le login tel que
stocké dans le cache :

<html>
<head>
<title>
Acc&egrave;s &agrave; l'espace priv&eacute;
</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="spip_style.css" type="text/css" />
</head>
<body bgcolor="#ffffff" text="#000000" link="#e86519" vlink="#6e003a" alink="#ff9900" topmargin="0" leftmargin="0" marginwidth="0" marginheight="0">

<br><br><br><center><table width="400"><tr><td width="400">
<?php include_local ('inc-login.php3');
        if ($GLOBALS['var_url']) $cible = new Link($GLOBALS['var_url']);
        else $cible = new Link('ecrire/');
        login ($cible, 'prive'); ?>
</td></tr></table></center>

</body>
</html>

Comme il y a du HTML avant le login(), tout ce qui a trait aux
headers (redirections, authentification HTTP) va foirer - sauf
avec le buffering activé sous PHP4.

Comme il y a du HTML avant le login(), tout ce qui a trait aux
headers (redirections, authentification HTTP) va foirer - sauf
avec le buffering activé sous PHP4.

Normalement il n'y a pas de header() obligatoire dans #LOGIN ; les
redirections, pose de cookie, demande d'auth_http sont traités, en principe,
dans spip_cookie ; mais j'ai peut-être oublié un ou deux trucs.

-- Fil