Login sha1 + création utilisateur

Description

J'ai repris un script que je trouvais plutôt pas mal mais qui avait un inconvénient majeur ; il utilisait des fonctions obsolètes du genre session_register ou encore des isset() manquants.

Il permet de créer des utilisateur avec un statut d'admin ou d'utilisateur.
Il utilise un base de donnée à installer manuellement.

Un fichier explicatif se trouve dans le zip.

J'en ai profité pour que les mots de passe soient cryptés en sha1.

Je vous mets la page d'accueil en vue (script php et screenshot)

A bientôt.

Source / Exemple :


<?php
require_once('connexion.php');

/*
			-----------------------------------
			---- SCRIPT D'AUTHENTIFICATION ----
					DBProtect V1.5
				Contact : david@borrat.net
				  Mise à jour php5
							+
			  cryptage sha1 par aventurier19
			-----------------------------------

  • /
session_start(); // début de session if (isset($_POST['login'])){ // execution apres envoi du formulaire $login = mysql_real_escape_string($_POST['login']); // mise en variable du nom d'utilisateur $pass = sha1($_POST['pass']); // mise en variable du mot de passe crypté // requete sur la table administrateurs (on récupère les infos de la personne) mysql_select_db($database_dbprotect, $dbprotect); $verif_query = sprintf("SELECT * FROM $tablename_dbprotect WHERE login='$login' AND pass='$pass'"); // requête sur la base administrateurs $verif = mysql_query($verif_query, $dbprotect) or die(mysql_error()); $row_verif = mysql_fetch_assoc($verif); $utilisateur = mysql_num_rows($verif); if ($utilisateur) { // On test s'il y a un utilisateur correspondant $_SESSION['authentification'] = 1; // enregistrement de la session // déclaration des variables de session $_SESSION['privilege'] = $row_verif['privilege']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur) $_SESSION['nom'] = $row_verif['nom']; // Son nom $_SESSION['prenom'] = $row_verif['prenom']; // Son Prénom $_SESSION['login'] = $row_verif['login']; // Son Login $_SESSION['pass'] = $row_verif['pass']; // Son mot de passe (à éviter) header("Location: accueil.php"); // redirection si OK exit; } else { header("Location: index.php?erreur=login"); // redirection si utilisateur non reconnu exit; } } // GESTION DE LA Déconnexion if (isset($_GET['erreur']) && $_GET['erreur'] == 'logout'){ // Test sur les paramètres d'URL qui permettront d'identifier un "contexte" de déconnexion header("Location: index.php?erreur=delog"); exit; } ?> <html> <head> <title>Authentification - DBProtect 1.5</title> <style type="text/css"> <!-- .Style2 {color: #0000FF} .Style5 {color: #FF0000} .Style6 {font-family: Verdana, Arial, Helvetica, sans-serif} .Style7 {font-size: 12px} .Style10 { font-size: 14px; font-weight: bold; } --> </style> </head> <body> <form action="" method="post" name="connect" class="Style6"> <p align="center" class="Style7"><strong> <?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "login")) { // Affiche l'erreur echo '<span class="Style5">Echec d\'authentification !!! > login ou mot de passe incorrect</span>'; } if(isset($_GET['erreur']) && ($_GET['erreur'] == "delog")) { // Affiche l'erreur echo '<span class="Style2">Déconnexion réussie... A bientôt '.$_SESSION['prenom'].' !</span>'; session_unset(); } if(isset($_GET['erreur']) && ($_GET['erreur'] == "intru")) { // Affiche l'erreur echo '<span class="Style5">Echec d\'authentification !!! > Aucune session n\'est ouverte</span> <span class="Style5">ou vous n\'avez pas les droits pour afficher cette page.</span>'; } ?> <p align="center" class="Style10"> - : : : DBProtect 1.5 : : : -</p> <p align="center" class="Style7"><em>Authentification sécurisée utilisant :<br> - BDD MySQL<br> - Sessions PHP<br> - Cryptage par SHA1</em></p> <p align="center" class="Style7"><em><a href="lisez_moi.htm">lire les instructions >></a></em></p> <div align="center" class="Style7"> <table width="300" border="1" cellpadding="0" cellspacing="0" bordercolor="#CCCCCC"> <tr> <td><table width="400" border="0" cellpadding="10" cellspacing="0" bgcolor="#eeeeee"> <tr> <td width="50%"><span class="Style7">LOGIN</span></td> <td width="50%"><input name="login" type="text" id="login"></td> </tr> <tr> <td width="50%"><span class="Style7">MOT DE PASSE </span></td> <td width="50%"><input name="pass" type="password" id="pass"></td> </tr> <tr> <td height="34" colspan="2"><div align="center"> <input type="submit" name="Submit" value="Se connecter"> </div></td> </tr> </table></td> </tr> </table> Script par <a href="http://www.borrat.net">DB</a><br /> Mise à jour php5 + cryptage sha1 par aventurier19</div> </form> </body> </html>

Conclusion :


Je trouve ce script relativement facile à comprendre, à mettre en place et sécurisé un minimum
donc n'hésitez pas à le prendre et l'utiliser.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.