2023年3月29日 星期三

如何在batch使用管理者權限執行程式

Windows 的權限檢查越來越嚴,所以很多操作都需要使用到管理者的權限。原本我只知道可以用 runas 的方式來執行程式並使用預設的認證,如此就可以使用管理者權限來執行程式,但是這樣會有安全性的問題,因為認證已經儲存,所以也可以被其他惡意的人用同樣的認證來執行任何惡意的行為。

後來才發現有更好的方式,也就是使用 schtasks ,這個指令的功能是執行工作排程器裡面的工作, 相關的指令是下 schtasks /run /tn name-you-gave-the-task-above 。 如此一來你能執行的也只有你預先在排程中設定的工作,密碼也只有這個工作有被設定過,相對來說安全很多。

參考網址: https://superuser.com/questions/581548/runas-savecred-ask-for-password-if-another-user-runs-the-same-batch-file