PowerShell:创建本地用户帐户

时间:2013-03-01 21:20:48

标签: powershell powershell-v2.0

我需要创建一个新的本地用户帐户,然后将其添加到本地管理员组。可以在PowerShell中完成吗?

编辑:

# Create new local Admin user for script purposes
$Computer = [ADSI]"WinNT://$Env:COMPUTERNAME,Computer"

$LocalAdmin = $Computer.Create("User", "LocalAdmin")
$LocalAdmin.SetPassword("Password01")
$LocalAdmin.SetInfo()
$LocalAdmin.FullName = "Local Admin by Powershell"
$LocalAdmin.SetInfo()
$LocalAdmin.UserFlags = 64 + 65536 # ADS_UF_PASSWD_CANT_CHANGE + ADS_UF_DONT_EXPIRE_PASSWD
$LocalAdmin.SetInfo()

我有这个,但想知道是否还有更多的PowerShell风格。

5 个答案:

答案 0 :(得分:65)

另一种选择是旧学校NET USER命令:

NET USER username "password" /ADD

好的 - 您无法设置所有选项,但对于简单的用户创建而言,它的复杂程度要低得多。易于在Powershell中编写脚本。

NET LOCALGROUP "group" "user" /add设置群组成员资格。

答案 1 :(得分:40)

从PowerShell 5.1开始,cmdlet New-LocalUser可以创建本地用户帐户。

使用示例:

创建用户帐户

New-LocalUser -Name "User02" -Description "Description of this account." -NoPassword

或创建具有密码的用户帐户

$Password = Read-Host -AsSecureString
New-LocalUser "User03" -Password $Password -FullName "Third User" -Description "Description of this account."

或创建连接到Microsoft帐户的用户帐户

New-LocalUser -Name "MicrosoftAccount\usr name@Outlook.com" -Description "Description of this account." 

答案 2 :(得分:11)

尝试使用Carbon's Install-UserAdd-GroupMember函数:

Install-User -Username "User" -Description "LocalAdmin" -FullName "Local Admin by Powershell" -Password "Password01"
Add-GroupMember -Name 'Administrators' -Member 'User'

免责声明: 我是Carbon项目的创建者/维护者。

答案 3 :(得分:6)

截至2014年,来自Microsoft代表(脚本专家)的here is a statement

  

尽管我们可能不愿意承认,但仍然没有Windows   Microsoft的PowerShell cmdlet允许创建本地用户   帐户或本地用户组。我们终于有了一个渴望的国家   配置(DSC)提供商可以做到这一点 - 但迄今为止,没有   小命令。

答案 4 :(得分:1)

Import-Csv C:\test.csv |
Foreach-Object {
  NET USER    $ _.username   $ _.password /ADD
  NET LOCALGROUP "group" $_.username  /ADD
}

将csv编辑为用户名,密码 并改变" group"为您的组名

:)在2012 R2上工作