9
私は、高い特権で起動するバッチファイルを持っています(私のインストーラはそれを生成します)。インストーラを起動しました(つまり、昇格された権限からの削除)。バッチファイル:昇格された特権を削除する(元のユーザーとしてコマンドを実行する)
これは可能ですか?
私は、高い特権で起動するバッチファイルを持っています(私のインストーラはそれを生成します)。インストーラを起動しました(つまり、昇格された権限からの削除)。バッチファイル:昇格された特権を削除する(元のユーザーとしてコマンドを実行する)
これは可能ですか?
あなたはで制限権限でコマンドを実行することができます:あなたはrunas
の引数として二重引用符で引数を含め、コマンドへの絶対パスを提供しなければならない
runas /trustlevel:0x20000 "YourCommandHere"
。あなたが制限された権限を持つ複数のコマンドを実行したい場合
、あなたは別のバッチファイルでそれらを入れて、でそれを実行することができます:とにかく
runas /trustlevel:0x20000 "cmd /C PathToYourBatchFile"
、これは制限された権限を持つ新しいコンソールを開きます。 。また、コマンドラインインタプリタによって提供され、関連するパスがないため、限定的な特権で内部コマンド(copy
、del
など)を実行する場合は、この構文を使用する必要があります。
0x20000
は標準ユーザーの信頼レベルです。
runas /showtrustlevels
Hmのように、使用可能な他の信頼レベルをリストすることができますが、これは予想した動作とは多少異なる動作をしているようです。通常cmd.exeを実行すると、タイトルバーには 'C:\ Windows \ System32 \ cmd.exe'と表示され、昇格された権限で実行されます。' Administrator:C:\ Windows \ System32 \ cmd.exe'と表示され、 runas/trustlevel:0x20000 cmd.exe'を実行すると、 'Administrator:cmd(制限された権限を持つsashoalm-PC \ sashoalmとして実行中)'が表示されます。ご覧のように、「元のユーザーとして実行する」という意味では、通常どおりに実行するのと同じではありませんが、違いが何であるか考えていますか? – sashoalm
@sashoalm新しいコンソールはまだAdministratorアカウントに関連付けられていますが、(ユーザーアカウントに管理者権限がある場合でも)標準ユーザーの権限で実行されます。元のユーザーとして実行するには、 'runas'の他のオプションを見てください。 –
プロセスエクスプローラは、両方のプロセスをユーザー名「sashoalm-PC \ sashoalm」としてリストします。私のユーザーアカウントは管理者アカウントです。したがって、ユーザ名が同じで権限が同じであれば、cmdのタイトルバーは違いを報告するのはなぜですか? – sashoalm