Powershellでパスワードを指定して共有ドライブをマウントする

PowerShellからパソコンの共有ドライブをユーザーIDとパスワードを指定してマウントします。

$computerName = '192.168.1.1'; # 接続先クライアントのIPアドレス
$adminPass = 'password'; # 接続時に使用するパスワード
$adminUser = 'admin'; # 接続時に使用するユーザーアカウント

# 認証情報のインスタンスを生成する
$securePass = ConvertTo-SecureString $adminPass -AsPlainText -Force;
$cred = New-Object System.Management.Automation.PSCredential "$computerName\$adminUser", $securePass;

# 共有ドライブをBドライブとしてマウントします
New-PSDrive -Name 'B' -PSProvider FileSystem -Root "\\$computerName\C`$" -Credential $cred;

# --- ここで色々処理

# Bドライブをマウント解除します
Remove-PSDrive -Name 'B';

ちなみにC$はWindowsでデフォルトで作成される共有名です。管理者権限を持つユーザーでしか開けませんが、C:ドライブ全体へのフルアクセスになっています。ここをマウントしてゴニョゴニョできると、クライアントパソコンの諸々の管理や情報収集が捗ります。

Windowsで管理者権限のユーザーアカウントにパスワード設定しないのが論外な理由は、こういう所にある。

ActiveDirectory(以下AD)を導入してたら、ADの管理者アカウントでプロセスを走らせれば、認証情報作ル必要も無くなります。New-PSDriveすら必要なく「\\192.168.1.1\c$」でアクセス出来るので、こんなKnow Howいらないんだけどね。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です