[plugin] MyPrivateStatic

Plugin pour protéger l'accès aux pages statiques avec un mot de passe

Plugin disponible ici

Pour ajouter un mot de passe à une page statique:
1. Aller dans la gestion des pages statiques à partir de l'administration
2. Cliquer sur le lien "Editer" (colonne "Action") de la page statique à protéger
3. Renseigner le champ "Mot de passe" en bas de page
4. Valider en cliquant sur le bouton "Enregistrer cette page statique"

L'image d'un cadenas jaune à droite du champ "Mot de passe" témoigne de la présence d'un mot de passe pour accèder à la page statique.

Pour supprimer un mot de passe à une page statique:
1. Aller dans la gestion des pages statiques à partir de l'administration
2. Cliquer sur le lien "Editer" (colonne "Action") de la page statique à déprotéger
3. Supprimer le contenu ou vider le champ "Mot de passe" en bas de page
4. Valider en cliquant sur le bouton "Enregistrer cette page statique"

Pour chaque page statique protégée par un mot de passe, l'image d'un cadenas jaune est affichée sur la page de gestion des pages statique (colonne "Identifiant").

Lorsqu'un visiteur tente d'accèder à une page statique protégée par un mot de passe, un formulaire est affiché pour saisir le mot de passe avant d'accèder au contenu de la page.

Historique
=======
## Version 1.3 (08/11/2013) ##
[+] Message d'alerte si mot de passe vide
BUG: Impossible de remettre à blanc la zone "Contenu public"

## Version 1.2 (19/03/2013) ##
[+] Ajout paramètre pour activer/désactiver la protection
[+] Ajout contenu public (visible uniquement si mot de passe demandé)
[+] Format du titre de la page statique protégée = nom de la page - titre du site
BUG Mauvaise url dans la redirection après saisie du mot de passe

## Version 1.1 (05/04/2012) ##
BUG: pas de demande de mot de passe avec les thèmes pour mobile
30/11/2011: version initiale 1.0

Consultant PluXml

Ancien responsable du projet

«1

Réponses

  • DenDen Membres
    Bonjour,

    GROS MERCI! Stéphane :)
  • super :)
  • JosJos Membres
    Mais c'est génial ce plugin... Ca ouvre pas mal de perspectives pour les webmasters.
  • ptit_sebptit_seb Membres
    décembre 2011 modifié
    Avec le thème par défaut cela fonctionne correctement (idem avec skeptical ou imbalance), mais avec un thème comme simplo non.

    Une incompatibilité ? un bug ? Y a t-il une exigence technique particulière ?
  • ça demande à voir ce qui caractérise le thème simplo.
    je pencherai plutot à une incompatibilité, certainement due à la structure du thème.
    ça doit surement pouvoir se résoudre.

    Consultant PluXml

    Ancien responsable du projet

  • Bonjour

    C'est ok pour le fonctionnement. Merci de prendre en compte les souhaits et d'être à l'écoute des utilisateurs.

    Ce qui me gêne un peu c'est que le titre de la page statique apparaît dans la barre de menu même si celle ci n'est pas accessible. Je pensais plutôt voir apparaître une zone mot de passe , qui une fois renseigné , ajouterait les titres des pages statiques dans la barre de menu: pour la prochaine fois peut-être...

    en tous cas , félicitations pour ce travail réalisé qui me donne beaucoup de satisfactions

    Avez vous pensez à faire un jour une "Convention Pluxml " comme certains le font . Ce serait sympa de pouvoir échanger en direct au cours d'une session de deux jours


    José
  • Si tu ne veux pas voir le menu va dans la gestion des pages statiques et dans la colonne "Menu", sélectionne "Masquer"

    Consultant PluXml

    Ancien responsable du projet

  • J'ai testé et j'approuve !
    Peut-être très utile ;)
  • zornzorn Membres
    janvier 2012 modifié
    Bonsoir,

    Ca y est, j'ai monté le site du club de lutte sous PluXML avec ce plugin et ça marche plutôt bien.
    Dans la console d'administration, j'ai remarqué que chaque fois que l'on modifie la page, il faut remettre le mot de passe - et chez moi, il apparait masqué (avec des étoiles) alors que quand il faut le saisir pour accéder à la page à regarder, il est en clair... Normal ?

    Nous allons être plusieurs à aller dans l'administration de PluXML. Du coup, je ressens le besoin d'avoir quelque chose comme une page ou un bloc note "privé" aux administrateurs : est c que quelque chose existe déjà ?

    Encore merci, et bien cordialement,

    PS : zut, je voulais mettre le lien vers le site et le rendre clicable, mais ça ne marche pas...
  • Bonjour

    une protection par mot de passe de page statique est donc désormais dispo, waoh !
    trop mega genial hyper cool mille merci
    vraiment !
    de ce que j'en ai lu (et compris, et donc pas encore testé), le pass est unique

    est-il/serait-il envisageable/réalisable que l'accès se fasse par un nombre de pass >1
    et si possible en restant toujours dans le champ du "sans base de données"
    et si oui, jusqu'à n combien pass >1

    question connexe 1 : quid de la sécurité et de l' "inviolabilité" de cette page protégée ? (toute considération d'ordre absolu étant bien évidemment écartée pour des besoins de pertinence)

    question connexe 2 : 1 ou x pass, la limite de leur usage et validité pourrait-elle être paramétrable du point de vue du temps, d'un délai, ou d'un nombre d'accès ?

    question connexe 3 : peut-on envisager que plusieurs pages bénéficient CHACUNE de ce traitement d'accès ? et si oui, CHACUNE aussi eu égard à mes deux précédentes questions ?

    (ayant mis vraiment plusieurs minutes non seulement à retrouver le lien de téléchargement du plugin mais encore davantage à retrouver le fil de cette discussion, je vais poursuivre dans une autre section, genre "discussions/augmenter le nombre d'utilisateurs")
  • clicdroit le mieux est que tu testes le plugin. tu auras surement des réponses à tes questions.
    ps: j'ai pas tout compris à ta prose :p

    Consultant PluXml

    Ancien responsable du projet

  • Les pages sont indépendantes quant à leur mot de passe. Par contre, il n'y a pas de durée de validité ni de nombre maximum d'accès concomitants.

    L'inviolabilité en informatique est toute relative... C'est sécurisé jusqu'à ce que ça ne le soit plus :p .

    Le reproche que je fais au plugin actuel (j'ai pas eu le temps de mettre le nez dans le code) c'est que dès que l'on a entré un mot de passe, il faut en mettre un systématiquement (c'est à dire que par défaut, le champ mot de passe est pré-complété) ce qui n'est pas très pratique à l'usage.
  • Jerry Wham a écrit:
    c'est à dire que par défaut, le champ mot de passe est pré-complété.

    C'est à dire ? Je ne comprends pas

    Consultant PluXml

    Ancien responsable du projet

  • Stéphane a écrit:
    Jerry Wham a écrit:
    c'est à dire que par défaut, le champ mot de passe est pré-complété.

    C'est à dire ? Je ne comprends pas


    On part d'une page vierge. Le champ mot de passe est déjà complété avec le mot de passe de connexion du compte utilisé si je ne m'abuse.
    Ou si on ré-ouvre la première page, qu'on efface le mot de passe et qu'on enregistre, la modification est prise en compte (c'est à dire que la page publique ne nécessitera pas de mot de passe pour la lire), mais le champ est à nouveau pré-rempli.

    Je ne sais pas si je suis plus clair??
  • re !
    test effectué
    tout joli, tout beau, tout propre
    question : y a-t-il un cookie dans l'affaire ? (ne rigolez pas, je n'y connais rien)
    parce que une fois entré le mot de passe, j'accède bien à la page, mais quittant la page, ou le site, ou l'onglet (je n'ai pas essayé avec le navigateur, j'avoue), la statique protégée se raffiche après comme une non-protégée... et perd de fait sa protection ;)
    y a-t-il une parade pour "rester couvert" ?
    par ailleurs, j'en profite donc pour ajuster mon premier post : si on indiquait directement dans le fichier plxMyPrivateStatic et/ou statiques.php LA ou LES valeurs attendues pour password, est-ce que ça marcherait ? (ne me blâmez pas, je ne m'y connais toujours pas davantage qu'il y a 4 lignes plus haut, et plutôt que de tester au pif dans tous les sens comme un zoive, je préfère sagement demander) :p
  • Jerry Wham a écrit:
    Stéphane a écrit:
    Jerry Wham a écrit:
    c'est à dire que par défaut, le champ mot de passe est pré-complété.

    C'est à dire ? Je ne comprends pas


    On part d'une page vierge. Le champ mot de passe est déjà complété avec le mot de passe de connexion du compte utilisé si je ne m'abuse.
    Ou si on ré-ouvre la première page, qu'on efface le mot de passe et qu'on enregistre, la modification est prise en compte (c'est à dire que la page publique ne nécessitera pas de mot de passe pour la lire), mais le champ est à nouveau pré-rempli.

    Je ne sais pas si je suis plus clair??

    ça ne serait pas lié au fonctionnement du navigateur qui mémorise la saisie des mots de passe dans un formulaire si on lui demande de le faire.

    Consultant PluXml

    Ancien responsable du projet

  • clicdroit a écrit:
    re !
    test effectué
    tout joli, tout beau, tout propre
    question : y a-t-il un cookie dans l'affaire ? (ne rigolez pas, je n'y connais rien)
    parce que une fois entré le mot de passe, j'accède bien à la page, mais quittant la page, ou le site, ou l'onglet (je n'ai pas essayé avec le navigateur, j'avoue), la statique protégée se raffiche après comme une non-protégée... et perd de fait sa protection ;)
    y a-t-il une parade pour "rester couvert" ?
    par ailleurs, j'en profite donc pour ajuster mon premier post : si on indiquait directement dans le fichier plxMyPrivateStatic et/ou statiques.php LA ou LES valeurs attendues pour password, est-ce que ça marcherait ? (ne me blâmez pas, je ne m'y connais toujours pas davantage qu'il y a 4 lignes plus haut, et plutôt que de tester au pif dans tous les sens comme un zoive, je préfère sagement demander) :p

    La page reste est accessible une fois le mot de passe saisi et ceci tant que tu ne fermes pas ton navigateur.

    Consultant PluXml

    Ancien responsable du projet

  • Stéphane a écrit:
    Jerry Wham a écrit:
    Stéphane a écrit:

    C'est à dire ? Je ne comprends pas


    On part d'une page vierge. Le champ mot de passe est déjà complété avec le mot de passe de connexion du compte utilisé si je ne m'abuse.
    Ou si on ré-ouvre la première page, qu'on efface le mot de passe et qu'on enregistre, la modification est prise en compte (c'est à dire que la page publique ne nécessitera pas de mot de passe pour la lire), mais le champ est à nouveau pré-rempli.

    Je ne sais pas si je suis plus clair??

    ça ne serait pas lié au fonctionnement du navigateur qui mémorise la saisie des mots de passe dans un formulaire si on lui demande de le faire.

    Pit-être ? Quoi qu'il en soit, c'est génant. Je vais voir si on peut pas arranger ça.
  • Jerry Wham a écrit:

    Pit-être ? Quoi qu'il en soit, c'est génant. Je vais voir si on peut pas arranger ça.

    merci pour ton aide

    Consultant PluXml

    Ancien responsable du projet

  • Bonjour,

    pour éviter que le champ soit pré-rempli(password) ou
    en mode text se voir proposer un histo des textes tapés et envoyés,
    il faudrait générer un nouvelle valeur a name="" a chaque fois avec un "timestamp" par exemple .. a stockée dans un cookie le temps de validé le mdp :)

    ++
  • zornzorn Membres
    Stéphane a écrit:
    ça ne serait pas lié au fonctionnement du navigateur qui mémorise la saisie des mots de passe dans un formulaire si on lui demande de le faire.
    Si. Petit souci 1
    Sinon, je disais, petit souci 2, qu'il faut remettre le mot de passe à chaque modif de la page statique sinon on le perd
    Enfin, petit souci 3, lors de la saisie du mot de passe pour aller vois la page statique le mot de passe s'écrit en clair "123" au lieu masqué "***"
    Je ne suis pas assez doué pour bricoler des solutions...
    Moi, en tout cas, je l'ai mis en place, ce plugin, et ces petits soucis mis de côté, tout le reste est génial. Merci
  • je note les points 2 et 3 pour les régler

    Consultant PluXml

    Ancien responsable du projet

  • zornzorn Membres
    Stéphane a écrit:
    je note les points 2 et 3 pour les régler
    Super, merci :)
  • 05/04/2012: Version 1.1
    BUG: pas de demande de mot de passe avec les thèmes pour mobile

    Consultant PluXml

    Ancien responsable du projet

  • J'ai remarqué, dans ma config actuelle (5.1.5 + hébergement free) qu'il y avait un soucis lorsque j'entre le mot de passe (comme une mauvais redirection, erreur 404 chez moi. Si je reviens en arrière alors je retombe sur la page statique) ; c'est peut être l'hébergement free qui fait ça ?
  • Si d'autres utilisateurs sur free pouvaient tester et faire un retour pour faire une comparaison...

    Consultant PluXml

    Ancien responsable du projet

  • danielsandanielsan Membres
    novembre 2012 modifié
    si je modifie le fichier form.static_password.php pour y mettre un lien pointant vers une email, le code de protection des emails apparaît en clair ... ( je sais que ce bug va gonfler ... :D )
  • Je n'ai pas le problème chez moi. Le mail s'affiche normalement et il est obfusqué dans le code source de la page html. C'est possible que tu ais (hais?? :p) le problème mais pas avec ce plugin, plutôt avec lockArticles.
  • danielsan a écrit:
    si je modifie le fichier form.static_password.php pour y mettre un lien pointant vers une email, le code de protection des emails apparaît en clair ... ( je sais que ce bug va gonfler ... :D )

    vérifie l'encodage de ton fichier (utf8-sans bom) et si tu as bien <?php et pas <? dans tes sources

    Consultant PluXml

    Ancien responsable du projet

  • finalement rien n'y fait.
    J'ai changé l'encodage et j'ai cru que cela avait changé mais j'avais oublié les ":" dans l'adresse, du coup ça le faisait pas.

    voici le code de form.static_password.php
    <?php if(!defined('PLX_ROOT')) exit; ?>
    <?php
    
    $plxMotor = plxMotor::getInstance();
    $plxPlugin=$plxMotor->plxPlugins->getInstance('plxMyPrivateStatic');
    
    $error=false;
    
    if(!empty($_POST)) {
    	if($plxMotor->aStats[$_POST['id']]['password']!=sha1($_POST['password']))
    		$error = $plxPlugin->getLang('L_INVALID_PASSWORD');
    	else {
    		$_SESSION['password_statics'][$_POST['id']]=true;
    		header('Location: '.$plxMotor->urlRewrite('?static'.intval($_POST['id'])));
    		exit;
    	}
    }
    
    ?>
    <div id="access-area" class="grid_8 space_2 margin_t2 margin_b2 text-center">
    	<?php if($error): ?>
    	<p class="static_password_error"><?php echo $error ?></p>
    	<?php else: ?>
    	<p class="static_password">Pour acc&eacute;der &agrave; cette section, veuillez renseigner votre mot de passe</p>
    	<?php endif; ?>
    	<form action="#form" method="post">
    		<fieldset>
    		<p>
    			<label for="password"><?php $plxPlugin->lang('L_FORM_PASSWORD') ?>&nbsp;:</label>
    			<input id="password" name="password" type="text" size="30" value="" />
    			<input type="hidden" name="id" value="<?php echo $plxMotor->idStat ?>" />
    			<input type="submit" name="submit" value="<?php $plxPlugin->lang('L_FORM_BTN_SEND') ?>" />
    		</p>
    		</fieldset>
    	</form>
    <p class="margin_t2">o&ugrave; demandez-le &agrave; votre commercial:</p>
    <ul>
    	<li>Lau AD - 06 XX XX XX XX - <a href="mailto:mon@email.com" title="Demandez votre code d'acc&egrave;s &agrave; Lau AD">mon@email.com</a></li>
    </ul>
    </div>
    
Connectez-vous ou Inscrivez-vous pour répondre.