批量创建广告用户

Bulk AD Users Creation

我正在处理一个 PowerShell 命令,其中有一个具有特定属性的 .csv 文件,但实际上我无法完成它。

我的 .csv 文件的属性顺序如下:

我目前的代码是这样的:

$Users = Import-Csv -Path "C:\BulkUsers.csv"            
foreach ($User in $Users)            
{      
    $UPN = $User.userPrincipalName
    $SAM = $User.sAMAccountName
    $Password = $User.password     
    $UserFirstname = $User.givenName            
    $UserLastname = $User.sn 
    $Displayname = $User.givenName + " " + $User.sn  
    $Description = $User.description  
    $Path = $User.Path            
    $Title = $User.title
    $Company = $User.company
    $Group = $User.memberOf
    $Department = $User.department          

    New-ADUser -UserPrincipalName $UPN -SamAccountName $SAM -AccountPassword (ConvertTo-SecureString $Password -AsPlainText -Force) -GivenName "$UserFirstname" -Surname "$UserLastname" -DisplayName "$Displayname" -Description "$Description" -Path "$Path" -title "$Title" -company "$Company" -memberOf  "$Group" -department "$Department" -ChangePasswordAtLogon $true
}

执行时出现以下错误:

New-ADUser : A parameter cannot be found that matches parameter name 'memberOf'.
At line:15 char:292
+ ... any "$Company" -memberOf  "$Group" -department "$Department" -ChangePasswordAtLo ...
+                    ~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [New-ADUser], ParameterBindingException
    + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.ActiveDirectory.Management.Commands.NewADUser

错误消息非常简单明了。如果您查看 New-ADUser cmdlet you'll see that it doesn't have a parameter -memberOf. To add the newly created user to a group use the Add-ADGroupMember cmdlet 的文档。

$Account = New-ADUser ... -PassThru
Add-ADGroupMember -Identity $Group -Members $Account

这是假设 CSV 中的 memberOf 字段只包含一个组名或专有名称。

附加参数-PassThru允许您将创建的帐户对象分配给一个变量,这样您就可以在组分配中使用该变量。没有那个参数 New-ADUser 静默运行(没有输出)。