it-swarm.cn

如何使用Powershell创建Active Directory用户帐户

我一直在设置需要Active Directory帐户的研发环境。由于我们将这些环境放置在隔离的网络中,因此每个环境都需要自己的Active Directory。如何使用Powershell创建新的Active Directory帐户。

19
Rob Murdoch

我不确定您是否要寻找一个使用名称,密码等列表的脚本,但是以下命令可以创建一个新用户。 UserPrincipalName是可选的。在这种情况下,不使用电子邮件。

New-ADUser -SamAccountName nnn2 -Name "nnn2" -UserPrincipalName [email protected] -AccountPassword (ConvertTo-SecureString -AsPlainText "somePassword" -Force) -Enabled $true -PasswordNeverExpires $true -Path 'CN=Users,DC=jjdomain,DC=net'

如果希望在受信任的域中创建用户,请在上述命令中添加-server dns.domain

19
sejong

我建议调查Quest的AD cmdlet:

http://www.quest.com/powershell/activeroles-server.aspx

一个新的AD用户将是:

new-QADUser -name 'user1' -ParentContainer 'OU=companyOU,DC=company,DC=com' -samAccountName 'user1' -UserPassword '[email protected]'

但是,对于“纯” Powershell,Shay对Idera脚本的建议可以节省使用其他cmdlet的麻烦。请注意,如果您要下载脚本的麻烦,不妨下载Quest cmdlet。

6
fenster

我在上面接受了Brad的回答,并在下面添加了更多详细信息(感谢Brad使我朝这个方向思考):

输入CSV文件:

cn,givenname,sn,sAMAccountName,displayname,UserPrincipalName
Joe Smith,Joe,Smith,jsmith,Joe Smith,[email protected]
Susan Johnson,Susan,Johnson,sjohnson,Susan Johnson,[email protected]

代码:

$inputFile = Import-CSV  <insert filepath here>

foreach($line in $inputFile)
{
    ## need to add quotes around DSN        
    $dsn = "`"cn="+$line.cn+",ou=userou,dc=domain,dc=com`""
    $samid = $line.sAMAccountName
    $ln = $line.sn
    $fn = $line.givenname
    $dn = $line.displayname
    ## need to add quotes around display name
    $dn2 = "`"$dn`""
    $upn = $line.UserPrincipalName

    cmd /c "dsadd user $dsn -samid $samid -ln $ln -fn $fn -display $dn2
    -upn $upn -mustchpwd yes -pwd [email protected]"

    write-Host `n
}    

祝好运!

5
Bobby T

如果您只是在不同的网络/域上设置相同的用户,那么普通的旧.cmd文件应该可以解决问题。只需为每个用户发出对 dsadd 命令的调用即可。

调用dsadd或dsmod也会在powershell脚本中间起作用。您甚至可以拥有一个用户名/密码的CSV文件,您可以使用powershell脚本导入该文件,并通过调用dsadd或dsmod遍历每一行,如下所示:

$inputFile = Import-CSV  <insert filepath here>

foreach($line in $inputFile)
{
    dsadd user -samid $line.Username -pwd $line.Password
}

Ds命令(dsadd,dsmod等)随Active Directory角色一起安装,因此,一旦您启动并运行AD,就可以使用它们。

2
brad.lane