#!/usr/bin/env python
# -*- coding: utf-8 -*-
import tkinter as tk
import pyotp
import sqlite3
import os
if(os.path.exists('gauth.db')):
pass
else:
#Connectez-vous à la base de données
conn = sqlite3.connect('gauth.db')
c = conn.cursor()
#Créer une table
c.execute(
'''CREATE TABLE gauth(id integer primary key AUTOINCREMENT, name text, private_key text)''')
#Insérer des données
c.execute(
"INSERT INTO gauth VALUES (1, 'user1', 'SV6LSO55UOWQBYS7RFHVTY7KTUZSGRYN')")
c.execute("INSERT INTO gauth VALUES (2, 'user2', 'qwertgfdsazxcvb')")
c.execute("INSERT INTO gauth VALUES (3, 'user3', 'vfrtgbnhyqweraa')")
#Enregistrer (valider) le résultat inséré
conn.commit()
#Fermer lorsque vous avez fini d'accéder à la base de données
conn.close()
#Créer une fenêtre et un titre avec tkinter
#Spécifiez la taille de la fenêtre
root = tk.Tk()
root.title(u"g_authentication_tool")
root.geometry("300x200")
#barre de menu
menubar = tk.Menu(root)
filemenu = tk.Menu(menubar)
filemenu.add_command(label="s'inscrire")
filemenu.add_command(label="Supprimer l'enregistrement")
filemenu.add_command(label="Fermer")
menubar.add_cascade(label="Fichier", menu=filemenu)
root.config(menu=menubar)
#Connectez-vous à la base de données
conn = sqlite3.connect('gauth.db')
c = conn.cursor()
for a in c.execute("select * from gauth"):
totp = pyotp.TOTP(a[2]) #Valeur clé
totp.now()
#Afficher l'étiquette
Static1 = tk.Label(text=a[1])
Static1.pack(side='left')
Static2 = tk.Label(text=totp.now())
Static2.pack(side='left')
#Enregistrer (valider) le résultat inséré
conn.commit()
#Fermer lorsque vous avez fini d'accéder à la base de données
conn.close()
root.mainloop()
--Fonctionnement partie du menu --Organiser les sources
Recommended Posts