Windowsのローカルユーザーアカウントの管理は、システム管理者にとって重要な作業の一つです。
GUI(グラフィカルユーザーインターフェース)での管理も可能ですが、大量のユーザー設定を一括変更したり、自動化を実現したりする場合は、PowerShellを活用するのが効率的です。
Set-LocalUser
コマンドは、Windows 10以降の環境でローカルユーザーのプロパティを変更するためのPowerShellコマンドレットです。本記事では、Set-LocalUser
の基本的な使い方から応用例まで、実用的なスクリプトとともに詳しく解説します。
Set-LocalUser
は、Windowsのローカルユーザーアカウントの情報を変更するためのPowerShellコマンドです。
例えば、ユーザー名、説明、パスワードの更新などを簡単に行うことができます。
このコマンドは Windows 10, Windows Server 2016以降 で利用可能であり、Active Directoryのユーザーではなく、ローカルユーザーのみに適用 されます。
Set-LocalUser -Name <ユーザー名> -Password <パスワード>
上記のように、-Name
で対象のユーザーを指定し、-Password
オプションでパスワードを変更できます。
次の章では、より詳しいオプションと実用例を紹介します。
ローカルユーザーの説明を変更するには、以下のコマンドを使用します。
Set-LocalUser -Name "TestUser" -Description "開発用アカウント"
このコマンドを実行すると、”TestUser” のアカウント説明が「開発用アカウント」に変更されます。
パスワードを変更するには、まずセキュアなパスワードを作成し、それを適用する必要があります。
$Password = ConvertTo-SecureString "NewP@ssw0rd" -AsPlainText -Force
Set-LocalUser -Name "TestUser" -Password $Password
このスクリプトでは、ConvertTo-SecureString
を使用して、新しいパスワードをセキュアな形式に変換しています。
ローカルユーザーアカウントを無効化するには、-Disabled
オプションを使用します。
Set-LocalUser -Name "TestUser" -Enabled $false
逆に、無効化されたアカウントを有効にする場合は $true
を設定します。
Set-LocalUser -Name "TestUser" -Enabled $true
ローカルユーザーのフルネームを変更するには、以下のコマンドを実行します。
Set-LocalUser -Name "TestUser" -FullName "田中 太郎"
会社や組織で複数のローカルユーザーのパスワードを変更する場合、以下のスクリプトを使用できます。
$Users = @("User1", "User2", "User3")
foreach ($User in $Users) {
$Password = ConvertTo-SecureString "NewPassword123!" -AsPlainText -Force
Set-LocalUser -Name $User -Password $Password
}
このスクリプトは、指定したユーザーのパスワードを一括で変更します。
例えば、「説明が ‘旧アカウント’ になっているすべてのユーザーを無効化する」場合は、以下のようなスクリプトを実行します。
$Users = Get-LocalUser | Where-Object { $_.Description -eq "旧アカウント" }
foreach ($User in $Users) {
Set-LocalUser -Name $User.Name -Enabled $false
}
このスクリプトは、条件に該当するユーザーを取得し、Set-LocalUser
を用いて無効化します。
Set-LocalUser
を実行する際には、以下の点に注意してください。
Set-LocalUser
を使用するには、PowerShellを 管理者として実行 する必要があります。Set-LocalUser
は ローカルユーザー のみを対象とし、Active Directoryの管理には Set-ADUser
などのコマンドを使用する必要があります。-Password
の値を直接入力するとセキュリティ上のリスクがあります。ConvertTo-SecureString
を使用して適切に処理しましょう。Set-LocalUser
コマンドを活用すると、Windowsのローカルユーザー管理が効率的に行えます。
今回紹介した内容をまとめると、以下のようになります。
Set-LocalUser
は、ローカルユーザーのパスワード、説明、フルネーム、有効・無効化を変更できる。このPowerShellコマンドを活用することで、ユーザー管理の負担を大幅に軽減できます。
ぜひ試してみてください!