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いらないんだけどね。