一時的に管理者ユーザーの権限で管理者として実行(パスワード入力回避)

2020年9月3日木曜日

PowerShell Windows

t f B! P L



一般ユーザーと管理者ユーザーを分けて運用

Windows Serverの運用をしているとき、社内のルールによっては
一般ユーザーと管理者ユーザーを分けて運用しているかと思います。
参照するだけのつもりが、誤って設定を変えてしまわないよう、
参照のみの権限で普段はログインし、変更するときだけ管理者ユーザーを
使用するといった運用です。

このような運用をしていると
一般ユーザーでログインし、hostsファイルを参照し、修正したいときに、
一旦ログオフして、管理者ユーザーでログインしなおしてから修正する必要があります。

今回は再ログインせずに一時的に管理者ユーザーとして実行し、さらにUACの制限を
外して修正処理を実施する方法を見ていきます。

Runasコマンドを使用してもUACが邪魔をする

通常、一時的に別ユーザーで実行するには下記のようにrunasコマンドを使用します。

1.runas /user:<管理者ユーザー> notepad

ただし、この状態だとUACで制御されたファイルなどは編集しても保存できません。

コマンドから管理者として実行

コマンドから管理者として実行する場合はPowershellを用いて、以下を実行します。

2.powershell -command start-process cmd -verb runas

一時的に管理者ユーザーにスイッチして管理者として実行

上記の1.と2.のコマンドを組み合わせて、下記のように実行すると
一時的に管理者として実行できます。

3.runas /user:<管理者ユーザー> "powershell -command start-process cmd -verb runas"

パスワード入力回避

上記の3.のコマンドに対して、毎回のパスワードの入力を回避するには「/savecred 」のオプションを使用します。最初の1回目はパスワードを入力する必要がありますが、2回目以降はパスワード不要となります。

4.runas /savecred /user:<管理者ユーザー> "powershell -command start-process cmd -verb runas"

PV

PVアクセスランキング にほんブログ村

ブログ村

このブログを検索

自己紹介

システムエンジニアとして12年ほど勤めたあと、社内SEに転職しました。 2017年に転職して、2019年に中古マンションを買いました。

リモートデスクトップのプロキシ越え

社内ネットワークからクラウド上のサーバにリモートデスクトップしたい Azureなどのクラウド環境にWindowsOSを立ち上げると、インターネット経由でリモートデスクトップ接続することになります。会社のネットワークからインターネットにアクセスする場合はプロキシサーバーやファイ...

QooQ