Page protegée par un mot de pass
jjkd
Messages postés
15
Statut
Membre
-
yg_be Messages postés 24281 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 24281 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>
A voir également:
- Page protegée par un mot de pass
- Trousseau mot de passe iphone - Guide
- Mot de passe - Guide
- Mot de passe administrateur - Guide
- Mot de passe bios perdu - Guide
- Voir mot de passe wifi android - Guide
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 exemple
Mais, si une seule action elles ne sont pas requises
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
.
@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 exemple
if(condition){
echo "un truc";
echo "un autre truc";
}
Mais, si une seule action elles ne sont pas requises
if(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.
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
24281
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 585
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.
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
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
}
?>
Bon dimanche !