Rumah >pembangunan bahagian belakang >Tutorial Python >PERJALANAN PENGEDEPAN HARI)
Meneruskan perjalanan pengekodan saya (Hari 1 kekal tidak ditulis, mungkin selama-lamanya!), saya sedang menangani program pengesahan pengguna masa nyata untuk menghalang akses tanpa kebenaran. Ia adalah idea yang nampak mudah, tetapi dengar pendapat saya.
Fungsi Yang Dimaksudkan:
Program berjalan secara diam-diam semasa sistem dimulakan, secara berkala (cth., setiap jam) meminta kata laluan. Yang penting, ia mengekalkan keutamaan yang tinggi, menghalang penutupan atau pengurangan. Kemasukan kata laluan yang salah mengakibatkan penutupan sistem.
<code class="language-python">from tkinter import * import subprocess import threading import time import getpass # Added for secure password input window = Tk() window.title("User Verification") window.config(background="black") # Initialize password (should be replaced with a more secure method) q = getpass.getpass("Set initial password: ") entry = Entry(window, fg='#00FF00', bg='black', font=('Arial',30), show='*') # Mask password input entry.pack(side=RIGHT) def verify_user(): global q while True: y = entry.get() if y != q: subprocess.run('shutdown /s', shell=True) break # Exit the loop after shutdown else: print('Verification successful.') # Replace password here (securely!) q = getpass.getpass("Set new password: ") entry.delete(0, END) # Clear entry field time.sleep(3600) # Check every hour def start_verification(): verification_thread = threading.Thread(target=verify_user) verification_thread.daemon = True # Allow program to exit even if thread is running verification_thread.start() u = Button(window, text='Start Verification', # Changed button text fg='#00FF00', bg='black', command=start_verification) u.pack(side=BOTTOM) t = Label(window, text='Enter Password:', # Simplified label text font=('Arial',15), fg='#00FF00', bg='black') t.pack(side=LEFT) window.mainloop()</code>
Peningkatan Terancang:
Ini adalah versi asas. Penambahbaikan masa hadapan termasuk:
getpass
semasa menyediakan permulaan, tetapi pengurusan kata laluan yang lebih mantap diperlukan.Penafian: Ini adalah contoh asas dan tidak mempunyai ciri keselamatan yang mantap. Gunakan atas risiko anda sendiri. Untuk keselamatan peringkat pengeluaran, gunakan sistem pengesahan yang telah ditetapkan. Cadangan dialu-alukan (tetapi tiada jaminan balasan!).
Atas ialah kandungan terperinci PERJALANAN PENGEDEPAN HARI). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!