ユーザ起動のPowershellでスクリプトを管理者権限で実行するには?

この記事は更新から24ヶ月以上経過しているため、最新の情報を別途確認することを推奨いたします。

既にユーザ権限で立ち上げているPowerShellから新たに管理者権限のPowershellを立ち上げる際には以下のスクリプトを実行してください

Start-Process powershell -verb runas

-verb runas
にて管理者権限にてアプリケーションを実行させることができます。
しかし、上記のスクリプトでは単に新たにPowershellが立ち上がるだけですのでこれを応用し、
実行したいスクリプトを確実に管理者権限で実行する為スクリプトの前に以下のコードを差し込みます

if (!([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole("Administrators")) { Start-Process powershell.exe "-File `"$PSCommandPath`"" -Verb RunAs; exit }

# ---------以下実行スクリプト

上記のスクリプトを差し込むことで、管理者権限でPowershellが実行されていない場合は管理者権限でPowerShellが立ち上がり、残りのスクリプトを引き継いで実行してくれます

いいね (この記事が参考になった人の数:5)
(↑参考になった場合はハートマークを押して評価お願いします)
読み込み中...

注意事項・免責事項

※技術情報につきましては投稿日時点の情報となります。投稿日以降に仕様等が変更されていることがありますのでご了承ください。

※公式な技術情報の紹介の他、当社による検証結果および経験に基づく独自の見解が含まれている場合がございます。

※これらの技術情報によって被ったいかなる損害についても、当社は一切責任を負わないものといたします。十分な確認・検証の上、ご活用お願いたします。

※当サイトはマイクロソフト社によるサポートページではございません。パーソルクロステクノロジー株式会社が運営しているサイトのため、マイクロソフト社によるサポートを希望される方は適切な問い合わせ先にご確認ください。
 【重要】マイクロソフト社のサポートをお求めの方は、問い合わせ窓口をご確認ください