提升域用户运行特定软件的权限
部署域服務后,默認域用戶加入本地計算機的“Users”中,具備普通用戶的權限。某些軟件正常運行時,需要具備本地管理員的權限。例如建行網(wǎng)銀檢測工具,人事部用的社保和公積金軟件,招聘部用的招聘測評軟件。
如果將域賬號加入本地管理員組中,將不利于管理。我們可以將需要運行的應用程序通過腳本(wscript)二次封裝,并使用工具“ScriptCryptor”編譯為exe文件,Users中的用戶執(zhí)行exe文件,后臺完成普通用戶的權限提升操作,使得應用程序以管理員的身份運行。
?
一、以管理員身份運行“記事本”為例。
1、編寫腳本。腳本內(nèi)容如下:
set sh=Wscript.CreateObject("WScript.Shell")
WScript.Sleep 1000
sh.Run ("runas /user:administratorc:\Windows\notepad.exe")
// c:\Windows\notepad.exe是以管理員身份運行的軟件的路徑。
WScript.Sleep 1000
//Sleep方法的參數(shù)是TimeAs Long,意思是在指定的時間長度內(nèi)將腳本執(zhí)行掛起,然后繼續(xù)執(zhí)行。參數(shù)值若設置較低,編譯后的exe文件可能不能正常運行,需合理設置。
sh.SendKeys "password{ENTER}"??? //password是administrator的密碼
WScript.Sleep 1000
sh.SendKeys "{ENTER}"
2、保存為vbs格式文件后,使用工具“ScriptCryptor”將vbs腳本編譯成exe,如下圖所示:
PS:ScriptCryptor可以設置所生成exe文件的各種參數(shù),包括應用程序圖標,所需包含的額外文件列表,公司名稱,程序名稱,版本,文件備注,時間等。
?
3、權限提升前,當前登錄用戶為“ytx”,直接打開“記事本”,通過任務管理器查看用戶權限,如下圖所示,顯示的用戶名為“ytx”,“ytx”為Users組中的賬戶。
在用戶“ytx”下,運行剛才編譯成的exe文件打開記事本,通過任務管理器查看用戶權限,如下圖所示,顯示用戶名為“administrator”。
通過這種方法,我們就可以將需要管理員權限才可以運行的軟件二次封裝后,編譯為exe文件。在客戶端安裝完需要管理員權限才可以運行的軟件后,不再通過快捷方式打開軟件,而是打開對應的編譯后的exe文件,達到提升權限的目的。
?
二、以管理員身份運行cmd(上述方法的延伸思考)
默認情況下,命令行窗口以普通用戶身份運行。執(zhí)行以下腳本后將命令行窗口提升為管理員模式。
set sh=Wscript.CreateObject("WScript.Shell")
WScript.Sleep 1000
sh.Run ("runas /user:administrator cmd")
WScript.Sleep 1000
sh.SendKeys "password{ENTER}"
WScript.Sleep 1000
sh.SendKeys "{ENTER}"
注意,將上述文本存儲為vbs格式后,運行編譯后的exe文件打開命令行窗口,然后手動方式運行其他應用程序,應用程序將繼承管理員權限,以管理員身份運行。例如運行Foxmail,效果如下圖:
?
PS:科普一下,怎么在CMD里運行程序
先找到要運行的程序路徑,如D盤???????????? 輸入D:回車
然后如果在文件夾中,如ProgramFiles?? ??????輸入cd Program Files 回車
如果還有文件夾,繼續(xù)用cd打開,如Foxmail 7.2? 輸入cd Foxmail 7.2 回車
要運行的程序在此目錄時,輸入那個程序名即可,如Foxmail? 輸入Foxmail
?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~其他命令~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dir 回車?? 查看當前目錄中的文件和文件夾。
cd.. 回車? 退到上一級目錄。
?
?
同理,還可以用此安裝軟件。例如QQ的安裝包“QQ7.2.exe”放在F盤,安裝QQ,如下圖:
?
?
轉載于:https://blog.51cto.com/chongyang/1695447
總結
以上是生活随笔為你收集整理的提升域用户运行特定软件的权限的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 我学的是设计模式的视频教程——命令模式v
- 下一篇: 数据解析1:XML解析(3)