AdjustTokenPrivileges啟用許可權

2022-07-29 11:15:10 字數 1575 閱讀 8443

我們有很多操作需要用到openprocess函式,而為了使程式有許可權使用這個函式,我們經常利用adjusttokenprivileges提公升許可權(準確的說不是提公升,而是將訪問令牌中禁用的許可權啟用)

bool setprivilege(

handle htoken,

//access token handle

lpctstr lpszprivilege, //

name of privilege to enable/disable

bool benableprivilege //

to enable or disable privilege

) tp.privilegecount = 1

; tp.privileges[

0].luid =luid;

if(benableprivilege)

tp.privileges[

0].attributes =se_privilege_enabled;

else

tp.privileges[

0].attributes = 0

;

//enable the privilege or disable all privileges.

if ( !adjusttokenprivileges(

htoken,

false,

&tp,

sizeof

(token_privileges),

(ptoken_privileges) null,

(pdword) null) )

if (getlasterror() ==error_not_all_assigned)

return

true;

}void

main( )

這段**在xp上沒有問題,但如果在windows 7 或者vista上,如果程式以標準使用者啟動,adjusttokenprivileges將會呼叫失敗,以管理員省份啟動沒有問題。

這是因為在windows 7上,標準使用者許可權很少,沒有debug許可權,更無從談起啟用debug許可權,使用者可以以管理員和標準使用者兩種方式啟用控制台,輸入命令whoami /all

來檢視兩種許可權下許可權的不同

ps:即使提公升除錯許可權,也不意味著對其它程序呼叫openprocess會成功(例如win7系統下的system和audiodg程序)

關於token_privileges結構

RabbitMQ 啟用頁面管理功能並設定許可權

rabbitmq guest administrator 在安裝完 rabbitmq 後,預設有乙個 guest guest 賬號密碼,但是為了安全,此賬號密碼只允許通過 localhost 訪問,不允許進行遠端訪問。而且,預設情況下,基於 http 的管理外掛程式也未啟用。所以,預設安裝完成後,我...

啟用始終離線模式下提供對檔案更快的訪問許可權

適用物件 windows 8.1,windows server 2012 r2,windows server 2012,windows 8 本文件介紹如何使用離線檔案的始終離線模式提供更快地訪問快取的檔案和重定向的資料夾。始終離線因為使用者始終離線工作,即使它們連線通過高速網路連線還提供了較低的頻寬...

計權聲級(A計權,B計權與C計權)

由於人耳對不同頻率的聲音的感受能力不同,即相同聲壓級的聲音,人們會在聽覺上感到不同的響度。當需要客觀測量又要反映主觀響度感覺的方法來度量和評估實際的聲音強弱。國際標準為 iec61672 2014 由於a計權對描述人耳聽力相對於真實聲學的頻率響應最有意義,所以應用最為廣泛。但由於a計權僅適用於相對安...