Formulaire HTML Mot de passe
Fermé
poule33
-
Modifié le 31 mars 2022 à 17:26
mamiemando Messages postés 33407 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 29 novembre 2024 - 1 avril 2022 à 00:29
mamiemando Messages postés 33407 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 29 novembre 2024 - 1 avril 2022 à 00:29
A voir également:
- Formulaire login et mot de passe html
- Identifiant et mot de passe - Guide
- Voir mot de passe wifi android - Guide
- Mot de passe administrateur - Guide
- Trousseau mot de passe iphone - Guide
- Réinitialiser pc sans mot de passe - Guide
3 réponses
mamiemando
Messages postés
33407
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
29 novembre 2024
7 806
Modifié le 31 mars 2022 à 17:40
Modifié le 31 mars 2022 à 17:40
Bonjour,
Pré-requis
Avant tout il est important de comprendre qu'un navigateur ne comprends que trois langages : CSS, HTML, javascript. Cela signifie que bout de code écrit dans un autre langage (PHP, python ou autre) doit être interprété de sorte à ne retourner à terme que du CSS, HTML, javascript.
Ensuite il faut distinguer le rôle des différents langages :
Si le serveur web est un serveur
Retour à ton problème
Il faut commencer par définir le serveur web que tu veux utiliser :
Puisque tu sembles aimer python,
Bonne chance
Pré-requis
Avant tout il est important de comprendre qu'un navigateur ne comprends que trois langages : CSS, HTML, javascript. Cela signifie que bout de code écrit dans un autre langage (PHP, python ou autre) doit être interprété de sorte à ne retourner à terme que du CSS, HTML, javascript.
Ensuite il faut distinguer le rôle des différents langages :
- le HTML définit les objets à afficher par le navigateur
- le CSS est un moyen de mettre en forme une page HTML (plus élégant qu'en HTML pur)
- le javascript permet de lancer du code sur le navigateur, sans interagir avec le serveur. C'est donc nécessairement du code "en clair" et donc un mauvais moyen de faire une authentification, car les logins/mots de passes sont des informations que l'on ne veut pas diffuser en clair.
- le langage utilisé côté serveur (typiquement PHP, python, ...). C'est un bon endroit pour faire une authentification. Les logins/mots de passes peuvent être écrits en dur dans le code (qui reste côté serveur) mais c'est une mauvaise pratique car cela fait qu'ils sont en clair pour les développeurs du site, et l'implémentation du site n'est pas sensé dépendre de ses utilisateurs. Normalement, on les stocke donc dans une base de données dédiée et dans laquelle les mots de passe seront chiffrés.
Si le serveur web est un serveur
apache2, une autre manière de faire consiste à définir un fichier
.htaccess- solution d'ailleurs évoquée par Dal.
Retour à ton problème
Il faut commencer par définir le serveur web que tu veux utiliser :
- soit tu prends un serveur existant genre
apache2
ounginx
, - soit tu codes un serveur web en python, par exemple avec le très bon
cherrypy
.
Puisque tu sembles aimer python,
cherrypyte permettrait de coder l'authentification à ton idée (éventuellement avec un mot de passe codé en dur dans un premier temps). Tu peux par exemple t'inspirer de ce tutoriel.
Bonne chance
jordane45
Messages postés
38316
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
31 mars 2022 à 16:35
31 mars 2022 à 16:35
Bonjour
Il te suffit d'utiliser un IF/ELSE (peut importe le langage) pour tester si le mot de passe saisit correspond à celui que tu veux.
Il te suffit d'utiliser un IF/ELSE (peut importe le langage) pour tester si le mot de passe saisit correspond à celui que tu veux.
[Dal]
Messages postés
6194
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
11 octobre 2024
1 092
Modifié le 31 mars 2022 à 17:17
Modifié le 31 mars 2022 à 17:17
Salut poule33,
C'est un peu bizarre ce que tu veux faire, mais c'est peut-être être parce que tu n'expliques pas pourquoi tu veux le faire. En tout état de cause, stocker un mot de passe en clair dans un code source (ou ailleurs sur le serveur) n'est pas une bonne idée. Les mots de passe sont normalement stockés hachés (et si possible salés).
Vois : https://auth0.com/blog/adding-salt-to-hashing-a-better-way-to-store-passwords/ (avec du code Python d'illustration pour le hachage et salage).
Plus simplement, si ton serveur est un serveur Apache, tu peux protéger l'accès à un site ou à une partie de l'arborescence d'un site avec un fichier .htaccess, le mot de passe étant stocké sous forme hachée dans un fichier .htpasswd.
Ce post sur SO explique comment faire : https://stackoverflow.com/questions/5229656/password-protecting-a-directory-and-all-of-its-subfolders-using-htaccess/5229803#5229803
C'est alors le serveur Web qui s'occupe de bloquer l'accès, sans que tu aies à programmer quoi que ce soit, la boite de dialogue d'authentification étant affichée par le navigateur et non pas par un formulaire du site. La seule présence du fichier .htaccess (incluant les paramètres nécessaires à la gestion de AuthType Basic) dans un répertoire du site suffit sur les serveur Apache qui sont paramétrés pour les gérer.
Dal
C'est un peu bizarre ce que tu veux faire, mais c'est peut-être être parce que tu n'expliques pas pourquoi tu veux le faire. En tout état de cause, stocker un mot de passe en clair dans un code source (ou ailleurs sur le serveur) n'est pas une bonne idée. Les mots de passe sont normalement stockés hachés (et si possible salés).
Vois : https://auth0.com/blog/adding-salt-to-hashing-a-better-way-to-store-passwords/ (avec du code Python d'illustration pour le hachage et salage).
Plus simplement, si ton serveur est un serveur Apache, tu peux protéger l'accès à un site ou à une partie de l'arborescence d'un site avec un fichier .htaccess, le mot de passe étant stocké sous forme hachée dans un fichier .htpasswd.
Ce post sur SO explique comment faire : https://stackoverflow.com/questions/5229656/password-protecting-a-directory-and-all-of-its-subfolders-using-htaccess/5229803#5229803
C'est alors le serveur Web qui s'occupe de bloquer l'accès, sans que tu aies à programmer quoi que ce soit, la boite de dialogue d'authentification étant affichée par le navigateur et non pas par un formulaire du site. La seule présence du fichier .htaccess (incluant les paramètres nécessaires à la gestion de AuthType Basic) dans un répertoire du site suffit sur les serveur Apache qui sont paramétrés pour les gérer.
Dal
31 mars 2022 à 18:50
Je souhaiterais revenir sur le codage côté serveur : je serai tout seul pour faire ce site ;D
Je veut faire un formulaire de connexion seulement pour moi.
Serait t-il possible de détailler le language côté serveur (donc python) pour une authentification ?
Merci, vous m'aidez dans mes recherches !
31 mars 2022 à 19:05
https://www.figma.com/file/8B2rjVWho6R17a2FYKiko8/Untitled?node-id=0%3A1
1 avril 2022 à 00:29