Skip to content

Instantly share code, notes, and snippets.

@DamianStanger
Created October 7, 2014 13:33
Show Gist options
  • Save DamianStanger/c4fbf305190b3ac7c36e to your computer and use it in GitHub Desktop.
Save DamianStanger/c4fbf305190b3ac7c36e to your computer and use it in GitHub Desktop.
Function Add-LocalUserAccount{
param (
[parameter(Mandatory=$true)]
[string[]]$ComputerNames=$env:computername,
[parameter(Mandatory=$true)]
[string[]]$UserNames,
[parameter(Mandatory=$true)]
[string]$Password
)
foreach ($computer in $ComputerNames){
foreach ($userName in $UserNames){
Write-Host "setting up user $userName on $computer"
[ADSI]$server="WinNT://$computer"
$user=$server.Create("User",$userName)
$user.SetPassword($Password)
$user.Put("FullName","$userName-admin")
$user.Put("Description","Scripted admin user for $userName")
#PasswordNeverExpires
$flag=$User.UserFlags.value -bor 0x10000
$user.put("userflags",$flag)
$user.SetInfo()
[ADSI]$group = “WinNT://$computer/Administrators,group”
write-host "Adding" $user.path "to " $group.path
$group.add($user.path)
[ADSI]$group = “WinNT://$computer/Remote Desktop Users,group”
write-host "Adding" $user.path "to " $group.path
$group.add($user.path)
}
}
}
[string[]]$computerNames = "server1", "server2"
[string[]]$accountNames = "damian", "user2"
Add-LocalUserAccount -ComputerNames $computerNames -UserNames $accountNames -Password mySuperSecurePassword
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment