Ajout d'une interface graphique au module d'identification

This commit is contained in:
Matt Marcha 2017-06-15 23:12:32 +02:00
parent 95a71612af
commit 5533f4e111
2 changed files with 46 additions and 4 deletions

View file

@ -7,17 +7,16 @@ Permet son acc
import DB.dbLink as dbo import DB.dbLink as dbo
from getpass import getpass from getpass import getpass
import hashlib import hashlib
import os
import mysql.connector as mariadb import mysql.connector as mariadb
class Auth(): class Auth():
"""Classe permettant l'authentification des utilisateurs""" """Classe permettant l'authentification des utilisateurs"""
access = False access = False
def __init__(self): def __init__(self, inputid,inputmdp):
#TODO : Récupérer les identifiants depuis un form dans une interface graphique #TODO : Récupérer les identifiants depuis un form dans une interface graphique
self.input_id = input("Entrer votre identifiant : ") self.input_id = inputid
self.input_psswd = getpass("Entrer votre mot de passe : ") self.input_psswd = inputmdp
self.input_psswd = hashlib.md5(self.input_psswd.encode()) self.input_psswd = hashlib.md5(self.input_psswd.encode())
self.grantAccess() self.grantAccess()
@ -41,5 +40,9 @@ class Auth():
if user_iD != None: if user_iD != None:
if self.input_psswd.hexdigest() == user_psswd: if self.input_psswd.hexdigest() == user_psswd:
Auth.access = True Auth.access = True
print("Accès autorisé")
print("Accès refusé")
else:
print("Accès refusé")
return Auth.access return Auth.access

39
Auth/login.py Normal file
View file

@ -0,0 +1,39 @@
# -*-coding:Latin-1 -*
"""Affichage de la fenêtre de login"""
from tkinter import *
import Auth.authentication as auth
class Login():
"""Classe gérant l'affichage de la fenêtre de login"""
def __init__(self):
self.fenetre = Tk()
# Création de nos widgets
self.message = Label(self.fenetre, text="Merci de vous identifier")
self.message.pack()
self.identifiant = str()
self.input_id = Entry(self.fenetre, textvariable=self.identifiant, width=30)
self.input_id.pack()
self.mdp = str()
self.input_mdp = Entry(self.fenetre, textvariable=self.mdp, width=30, show="*")
self.input_mdp.pack()
self.bouton_login = Button(self.fenetre, text="Log in", command=self.login)
self.bouton_login.pack()
def login(self):
"""L'utilisateur veut s'identifier
On appelle la classe d'authentification"""
grant = auth.Auth(self.input_id.get(), self.input_mdp.get())
if auth.Auth.access == True:
self.fenetre.destroy()