Windows上使用Python增加或刪除權(quán)限
在使用Python在 Windows 平臺上開發(fā)的時候, 有時候我們需要動態(tài)增加或刪除用戶的某些權(quán)限, 此時我們可以通過 AdjustTokenPrivileges API 來實現(xiàn)。
比如,我們要給用戶分配 SE_TCB_NAME 權(quán)限
flags = win32security.TOKEN_ADJUST_PRIVILEGES | win32security.TOKEN_QUERY
token = win32security.OpenProcessToken(win32api.GetCurrentProcess(), flags)
id = win32security.LookupPrivilegeValue(None, win32security.SE_TCB_NAME)
privilege = [(id, win32security.SE_PRIVILEGE_ENABLED)]
print win32security.AdjustTokenPrivileges(token, False, privilege)
比如,我們要給用戶去除 SE_TCB_NAME 權(quán)限
flags = win32security.TOKEN_ADJUST_PRIVILEGES | win32security.TOKEN_QUERY
token = win32security.OpenProcessToken(win32api.GetCurrentProcess(), flags)
id = win32security.LookupPrivilegeValue(None, win32security.SE_TCB_NAME)
privilege = [(id, 0)]
print win32security.AdjustTokenPrivileges(token, False, privilege)