很多人寫的服務都是以預設的 localsystem 帳號執行,該帳號在本機上有極高的許可權,但有幾個限制:
1. 不能訪問網路資源;
2. 沒有對應的 sid,不能訪問需要登入才能訪問的資源;
所以,這樣的服務不能直接訪問 hkey_current_user,讀取會失敗,寫入則會被重定向到 hkey_user/.default 下;
經過查資料,需要做兩件事:
1. 模仿乙個使用者登入;
handle hlogontoken = null;
handle hadmintoken = null;
if (!logonuser(m_strusername, _t("."), m_strpassword,
logon32_logon_interactive, logon32_provider_default, &hlogontoken))
if (!duplicatetokenex(hlogontoken, token_all_access, null,
securityidentification, tokenprimary, &hadmintoken))
if (!impersonateloggedonuser(hadmintoken))
closehandle(hadmintoken);
closehandle(hlogontoken);
reverttoself();
2. 把 hkey_current_user 對映到當前模仿的使用者,這個工作需要程式設計師顯式地呼叫;
hkey hkey = hkey_current_user;
regopencurrentuser(key_all_access, &hkey);
瀏覽器中訪問vscode服務
1.場景一 在一台可訪問的伺服器x.x.x.x上,執行著docker映象系統a,對映埠3000,作ssh連線使用.web的vscode服務搭建 1.在映象系統a中執行code server code server extensions extensions port 8080 2.在本地機器上,使用...
硬體訪問服務
一 硬體介面描述檔案aidl 新增 frameworks base core j a android os iledservice.aidl 二 mk編譯指令碼 修改vi frameworks base android.mk 編譯命令及效果圖 編譯輸出 out target common obj j...
訪問區域網伺服器中的服務
單位有乙個伺服器還有幾台電腦,伺服器上部署的有arcgis server 和 ms sql server軟體,為了能在本機方位伺服器上的資源,需要進行一下操作 1 需要網線和路由器連線乙個區域網 2 需要進行如下設定 基礎篇 前言 1 需要是管理員許可權 2 所有區域網電腦都要在相同ip段,比如都為...