Page protegée par un mot de pass
jjkd
Messages postés
15
Statut
Membre
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
j'aimerais savoir si ce code est vraiment sécurisé lorsqu'on l'utilise sur le net
en plus j'aimerais aussi savoir comment le faire sur une page
merci.
---------------------------------------------------------------------------
j'aimerais savoir si ce code est vraiment sécurisé lorsqu'on l'utilise sur le net
en plus j'aimerais aussi savoir comment le faire sur une page
merci.
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>Page index.php</title> </head> <body> <p>Veuillez entrer le mot de passe pour obtenir les codes d'accès au serveur central de la NASA :</p> <form action="secret.php" method="post"> <p> <input type="password" name="mot_de_passe" /> <input type="submit" value="Valider" /> </p> </form> <p>Cette page est réservée au personnel de la NASA. Si vous ne travaillez pas à la NASA, inutile d'insister vous ne trouverez jamais le mot de passe ! ;-)</p> </body> </html>
---------------------------------------------------------------------------
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>page secret.php</title>
</head>
<body>
<?php
if (isset($_POST['mot_de_passe']) AND $_POST['mot_de_passe'] ==
"kangourou") // Si le mot de passe est bon
{
// On affiche les codes
?>
<h1>Voici les codes d'accès :</h1>
<p><strong>CRD5-GTFT-CK65-JOPM-V29N-24G1-HH28-
LLFV</strong></p>
<p>
Cette page est réservée au personnel de la NASA. N'oubliez
pas de la visiter régulièrement car les codes d'accès sont changés
toutes les semaines.<br />
La NASA vous remercie de votre visite.
</p>
<?php
}
else // Sinon, on affiche un message d'erreur
{
echo '<p>Mot de passe incorrect</p>';
}
?>
</body>
</html>
6 réponses
-
Bonjoour à tous;
@jeepee : Le MD5 est fortement déconseillé .. idem pour le SHA1 qui sont facilement contournables désormais.
A la place, on utilisera les fonctions php : password_hash et password_verify
@jeepee, @yg_be : Les accolades pour un IF sont utiles lorsqu'il y a plusieurs instructions à réaliser lorsque la condition se vérifie.
Par exempleif(condition){ echo "un truc"; echo "un autre truc"; }
Mais, si une seule action elles ne sont pas requisesif(condition) echo "truc machin";
Mais pour éviter toute erreur... je conseille fortement de toujours utiliser les accolades.
@jjkd , si, comme tu le dis, les mots de passe sont changés régulièrement, dans ce cas, utilise une base de données... plutôt que de modifier le code source de la page à chaque fois que tu auras besoin de changer les identifiants
De plus, il serait bien d'utiliser un couple login/password plutôt que juste un password.
Sinon, des petits malins pourraient s'amuser à essayer de forcer l'accès à ta page en utilisant des scripts de "force brute" pour cracker le password.
Et pour finir, vu que tu débutes dans le monde php, voici quelques conseils à appliquer à tes codes :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
.
-
Bonjour,
Je ne suis pas particulièrement pointu en sécurité, mais tu pourrais a minima remplacer 'kangourou' par sa valeur md5 (2e55b55e3580b47e5155a8374a833a74) pour ne pas le mettre en clair dans le source.
Après tu testes md5($_POST['mot_de_passe']) == "2e55b55e3580b47e5155a8374a833a74"
voir d’autres possibilités : https://apprendre-php.com/tutoriels/tutoriel-35-scuriser-les-mots-de-passe-avec-les-hashs-et-les-salts.html
Pour une saisie du formulaire et son contrôle tout en un, la logique ce serait en début du source de tester si 'mot_de_passe' est renseigné, si oui : contrôle, si non : affichage formulaire qui s’ auto relance.
-
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour,
je ne sans pas ce que tu veux dire par "sécurisé". en tous cas, les visiteurs n'ont aucun moyen de voir ta source php. -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
ok merci
dans mes recherches je suis tombe sur une vidéos dont j'ai essaye de reproduire le code mais sa ne marche pas lorsque je charge la page je vois:
( ! ) Parse error: syntax error, unexpected 'echo' (T_ECHO) in C:\wamp64\www\Tuto\page mdp\index.php on line 22
pouvez vous m'aider à corriger s'il vous plait
<?php $motdepasse = 'supraphoenix'; // on teste si le formulaire a été bien envoyé if(isset($_POST['envoi'])) { // on verifie que la case mot de passe est valide et non vide if(isset($_POST['mdp']) AND !empty($_POST['mdp'])) { // on vérifie que le mot de passe entrée par l'utilisateur est le meme que celui que vous avez défini if($_POST['mdp'] == $motdepasse) { $accessgranted = 1; } else { $erreur = 'Attention le mot de passe entrée est erroné'; } } if(!isset($accessgranted)) { ?> <h1>PAGE PROTEGE PAR UN MOT DE PASSE</h1> <hr> <?php if (isset($erreur)) ( echo $erreur; ) ?> <form action="" method="post"> Veuillez entrer le mot de passe : <br> mot de passe <input type="password" name="mdp"> <input type="submit" name="envoi" value="entrez"> </form> <?php } else // debut de la page sécurisée ?> <h1>PAGE PROTEGE PAR UN MOT DE PASSE</h1> <?php } ?> -