1
我正在嘗試構建一個腳本,用於檢查當前登錄用戶的本地帳戶上的密碼是否具有在Windows中不爲空的密碼。我需要將它作爲安全合規性背景檢查的一部分來運行;它會報告給Nagios服務器。我需要在Python中完成這項工作,但如果Python不這樣做,我會向PowerShell開放。使用Python檢查本地帳戶是否有空白密碼
因此,該腳本將需要檢測:
- 在當前登錄用戶的用戶名。
- 上述用戶是否有空白密碼。
- 如果密碼不爲空,則返回錯誤代碼0,如果是,則返回錯誤代碼2。
我被困在任何一段代碼將允許我檢查當前用戶的密碼是否是「」。我有一個佈局,未經太多的裝飾,看起來是這樣的:
import os
import Tkinter
import tkMessageBox
from Tkinter import Tk, Toplevel
MyGui.update_idletasks()
MyGui.attributes('-topmost', True)
MyGui.geometry('{}x{}'.format(300, 150))
MyGui.resizable(width=False, height=False)
MyGui.withdraw()
ThisUser = os.getlogin()
ThisPassword = ... # line of code necessary to test for blank password; this is the part where I'm stuck
if ThisPassword = "":
tkMessageBox.showerror("Error For User Here", parent=MyGui)
print "No password set!"
sys.exit(2)
else:
print "Password exists."
sys.exit(0)
我發現this article,其中WinAPI的讚揚LogonUser
被使用,但我不精明與C#。 Python更適合我的舒適區域,我無法弄清楚如何檢查密碼是否爲空。我不想收集密碼本身。