Passage du module d'authentification en classe

This commit is contained in:
Matt Marcha 2017-06-08 23:28:53 +02:00
parent b47235de8f
commit 95a71612af

View file

@ -10,11 +10,19 @@ import hashlib
import os import os
import mysql.connector as mariadb import mysql.connector as mariadb
#TODO : Récupérer les identifiants depuis un form dans une interface graphique class Auth():
input_id = input("Entrer votre identifiant : ") """Classe permettant l'authentification des utilisateurs"""
input_psswd = getpass("Entrer votre mot de passe : ") access = False
input_psswd = hashlib.md5(input_psswd.encode())
def __init__(self):
#TODO : Récupérer les identifiants depuis un form dans une interface graphique
self.input_id = input("Entrer votre identifiant : ")
self.input_psswd = getpass("Entrer votre mot de passe : ")
self.input_psswd = hashlib.md5(self.input_psswd.encode())
self.grantAccess()
def grantAccess(self):
"""Authentification de l'utilisateur """
#On définit les champs à récupérer en BDD comme vides #On définit les champs à récupérer en BDD comme vides
user_iD = None user_iD = None
user_psswd = None user_psswd = None
@ -22,21 +30,16 @@ user_psswd = None
#On va récupérer les infos en BDD #On va récupérer les infos en BDD
quer = "SELECT Nom FROM utilisateur" quer = "SELECT Nom FROM utilisateur"
link = dbo.DBLink() link = dbo.DBLink()
result = link.query("SELECT Nom, MdP FROM utilisateur WHERE Identifiant = %s", [input_id, ]) result = link.query("SELECT Nom, MdP FROM utilisateur WHERE Identifiant = %s", [self.input_id, ])
for Nom, MdP in result: for Nom, MdP in result:
user_iD = Nom user_iD = Nom
user_psswd = MdP user_psswd = MdP
#Si l'user ID a été trouvé #Si l'user ID a été trouvé
#On compare le mot de passe entré à celui récupéré en BDD #On compare le mot de passe entré à celui récupéré en BDD, si ça matche, on renvoie True
#TODO : Définir l'autorisation de la connexion. Un fichier "auth" ? Une variable globale ?
if user_iD != None: if user_iD != None:
if input_psswd.hexdigest() == user_psswd: if self.input_psswd.hexdigest() == user_psswd:
print("Accès autorisé") Auth.access = True
else:
print("Le mot de passe est invalide")
else:
print("Cet utilisateur n'existe pas")
os.system("pause") return Auth.access