2012-10-15 18 views
39

我使用「運行方式」打開命令提示符爲不同的用戶但命令提示符不是 運行作爲管理員。我如何使它作爲管理員運行?如何從命令提示符下運行程序爲不同的用戶和管理員

UPDATE:我使用Windows Server 2012中

更新:我打開運行

runas /user:domain\username cmd.exe 

在cmd另一個帳戶,然後我試圖運行在這一新提示一些命令但這並未如提升的用戶(即使它具有管理員權限)。

+4

我不能」 t使它與'runas/user:domain \ username cmd.exe'一起工作我必須像這樣運行它:'runas/netonly/user:domain \ username cmd.exe' – martinmose

回答

0

運行方式不會奇蹟般地運行的命令作爲管理員,運行他們的任何帳戶,您提供的憑據。如果它不是管理員帳戶,runas不關心。

+1

我打開命令提示符的帳戶是管理員帳戶。 – Mark

+0

一個潛在的問題是,根據你如何調用runas,你可能會從現有的用戶會話繼承環境變量,因此可能像'echo%USERNAME%'這樣的東西可能不會報告你是其他用戶。你想用這個管理提示做什麼? – Wug

+1

如果您運行管理提示符並運行「whoami」命令,您是否會得到您期望的用戶? – Wug

12

開始 - > SHIFT +命令提示符下按鼠標右鍵有助於爲其他用戶或管理員使用

+2

對我來說,這是有效的:Shift + Ctrl,同時點擊程序 – bluish

+1

雖然它是一種以管理員身份運行程序的方式,但它不是原始問題的答案。 – Unicornist

+3

如何以其他用戶身份執行**和**管理員? – Kiquenet

-1

最簡單的是創建一個批處理文件(.bat),並運行以管理員身份。

右鍵點擊「以管理員身份運行」

+1

OP正在以普通用戶身份運行不是未升級的管理員 – user3710044

13

所有這些答案不幸錯過了這一點。

有2個安全上下文細微的差別在這裏,我們需要他們重疊。 - 「以管理員身份運行」 - 更改本地計算機上的執行級別 - 「以不同的用戶身份運行」 - 選擇在哪個用戶憑據下運行該進程。

當UAC是一個工作站上啓用,存在拒絕運行,除非提升的進程 - 簡單地作爲本地「管理員」組的成員是不夠的。如果您的要求也規定您使用替代憑證給您使用的備用憑證,那麼我們需要一種方法來調用該過程,作爲備用憑證AND提升。

我發現什麼都可以使用,雖然有點麻煩的是:

  • 運行CMD提示符以管理員身份
  • 使用Sysinternals的PSEXEC工具如下:

    PSEXEC \ \ localworkstation -h -i -u domain \ otheruser exetorun.exe

第一個標高需要能夠將t他psexec服務。 -h運行提升的新「遠程」(本地)進程,-i讓它與桌面進行交互。

也許有比這更簡單的方法?

+0

psexec可能不可用... – Pacerier

4

我已經找到一種方法用一行做到這一點:

runas /user:DOMAIN\USER2 /savecred "powershell -c start-process -FilePath \"'C:\\PATH\\TO\\YOUR\\EXECUTABLE.EXE'\" -verb runAs" 

有一些技巧怎麼回事。

:我們告訴CMD只是運行PowerShell的域\ USER2

:我們正在過 「開始處理」 命令PowerShell中,使用動詞 「的runAs」 提升DOMAIN \ USER2管理員/提升權限模式。

作爲一般註釋,在「文件路徑」參數的轉義字符必須存在(換句話說,該「\ & \\字符的組合),和單引號(')必須環繞的EXE路徑 - 這樣一來,CMD解釋文件路徑爲一個字符串,然後PowerShell使用單引號來解釋文件路徑作爲單個參數

使用「運行方式」動詞在PowerShell提升:http://ss64.com/ps/syntax-elevate.html

相關問題