RE: [Spip] Script Auth.php

Je ne suis pas un programmeur et j'ai cherché une solution simple et
efficace pour protèger des articles par mot de passe et merci Christophe
Rolland, j'ai trouvé ce qui me semble la solution idéale.

Pour ceux que ça intéresse voici une solution efficace. Cette solution
utilise les mots de passe des rédacteurs pour sécuriser des pages.

Explication en trois temps :

Copier le fichier authentification.php3 dans le répertoire SPIP de votre
site.
Copier le fichier authentification.html dans le répertoire SPIP de votre
site.
Insérer le code de protection au début du squelette à protèger et envoyer le
nouveau squelette dans le répertoire SPIP de votre site.

La même chose en plus détaillé :

authentification.php3 : Ce fichier doit simplement être copier dans le
répertoire qui contient les fichiers SPIP de votre site(par FTP par
exemple).
authentification.html : Ce fichier pour le test doit simplement être copier
dans le répertoire qui contient les fichiers SPIP de votre site(par FTP par
exemple). Lorsque le test auré été concluant, il sera toujours temps de
modifier le look de cette page en jouant dans le code HTML.
Insérer le code de protection dans le squelette à protèger
Pour insérer le code de protection, il suffit de
choisir le squelette à protèger - moi j'ai choisi les articles de la
rubrique
d'insérer le code de protection au tout début de la page
d'enregistrer le nouveau squelette -pour protéger les articles de la
rubrique 4, j'ai nommer mon squlette article-4.php-
Copier le nouveau squelette dans le répertoire qui contient les fichiers
SPIP de votre site(par FTP par exemple).

-----Original Message-----
From: Pierre France [mailto:listes@pierrefrance.com]
Sent: October 18, 2002 2:35 PM
To: Spip Liste
Subject: [Spip] Script Auth.php

Salut,

Je vais faire appel aux pros du PHP...

Avec la version 1.3.2, il était possible de protéger la lecture d'articles
en insérant dans le template des articles à protéger ceci :
<?php include ("auth.php"); ?>

Le script auth.php, créé par Olivier Martineau, est :

<?php
// Creer autant de user que necessaire
$user = '';
$user['olivier']='pass';
$user['webmaster']='pass';

// Choisissez le nom du secteur (REALM) : une authetification protege
plusieurs
// pages avec le meme REALM sans redemander l'authentification
$secteur='Acc\xe8s Priv\xe9';

// Indiquer l'URL de la page contenant le message d'erreur
// Ca peut etre un lien vers un article
$url_erreur="/spip/";

// Ne pas modifier ce qui suit
     if($PHP_AUTH_PW=="" || $PHP_AUTH_USER=="" || !isset($PHP_AUTH_USER)
|| $user
[$PHP_AUTH_USER]!=$PHP_AUTH_PW) {
         // si l'utilisateur n'est pas authentifie ou si le pass est faux
         Header("WWW-Authenticate: Basic realm=\"$secteur\"");
         Header("HTTP/1.0 401 Unauthorized");
         echo "L'acc\xe8s priv\xe9 est r\xe9vers\xe9 aux membres";
         exit();
     }
?>

Or pour une raison inconnue, ce script ne fonctionne plus avec la 1.4.2...
Les logins/pass sont systématiquement refusés.

Est-ce que qq peut me dire pourquoi et surtout comment y remédier ?

En vous remerciant par avance,

Pierre

authentif.zip (3.36 KB)

L'une des questions est d'autoriser des personnes non rédactrices (souvent il n'y a pas de rapport) à consulter articles ou rubriques spécifiques.

Or, il existe une distinction dans la partie coulisses pour représenter les auteurs sans accès à l'écriture (donc sans mot de passe).

Il suffirait donc d'avoir dans la liste des auteurs des noms "sans accès à l'écriture" (avec un logo rouge devant), ce qui éviterait une nouvelle liste de noms dans un nouveau fichier et une facilité de gestion des personnes. Sans pour autant donner la possibilité d'écrire à ceux qu'on autorise à lire articles et rubriques restreints.

Un développeur pourrait-il nous dire si d'après lui on ne pourrati pas récupérer ce genre de données (en fait la condition pour faire apparaître le logo rouge) pour les intégrer dans l'entrée par mot de passe que propose Gaël, sans faire beaucoup plus compliqué que le système de Gaël.
Proposition : affecter un mot de passe général, caché quelque part ?
Pour plus tard : faire une catégorie nouvelle de "lecteurs" avec des mots de passe qui ne permettent pas d'écrire.

J'en profite pour deamnder s'il ne pourrait être envisagé de faire pour les auteurs comme pour les mots-clés : des groupes.
Quand on en a une tripotée, ça simplifierait sacrément le tri et la recherche...

Et puis, donc, on pourrait faire un groupe "lecteurs".

Si je suis pas claire, n'hésitez pas.... <:-)

______________
At 15:22 18/10/2002 -0400, Gael Radier wrote:

Je ne suis pas un programmeur et j'ai cherché une solution simple et
efficace pour protèger des articles par mot de passe et merci Christophe
Rolland, j'ai trouvé ce qui me semble la solution idéale.

Pour ceux que ça intéresse voici une solution efficace. Cette solution
utilise les mots de passe des rédacteurs pour sécuriser des pages.

Explication en trois temps :

Copier le fichier authentification.php3 dans le répertoire SPIP de votre
site.
Copier le fichier authentification.html dans le répertoire SPIP de votre
site.
Insérer le code de protection au début du squelette à protèger et envoyer le
nouveau squelette dans le répertoire SPIP de votre site.

La même chose en plus détaillé :

authentification.php3 : Ce fichier doit simplement être copier dans le
répertoire qui contient les fichiers SPIP de votre site(par FTP par
exemple).
authentification.html : Ce fichier pour le test doit simplement être copier
dans le répertoire qui contient les fichiers SPIP de votre site(par FTP par
exemple). Lorsque le test auré été concluant, il sera toujours temps de
modifier le look de cette page en jouant dans le code HTML.
Insérer le code de protection dans le squelette à protèger
Pour insérer le code de protection, il suffit de
choisir le squelette à protèger - moi j'ai choisi les articles de la
rubrique
d'insérer le code de protection au tout début de la page
d'enregistrer le nouveau squelette -pour protéger les articles de la
rubrique 4, j'ai nommer mon squlette article-4.php-
Copier le nouveau squelette dans le répertoire qui contient les fichiers
SPIP de votre site(par FTP par exemple).