我正在尝试将一组用户添加到仅具有userPrincipalName的广告组中。
Import-Csv "C:\Temp\TESTGroup.csv" | %{ Add-ADGroupMember "Group Name" $_.userprincipalname}
这会导致与$_.userprincipalname
我想在此广告组中添加大约65个人的小组。
答案 0 :(得分:0)
这里的问题是Integer::compareTo
的{{1}}参数需要一个不是UserPrincipalName的标识符。因此,在这种情况下,您需要基于UserPrincipalName查询另一个标识符。由于-Members
接受ADPrincipals数组,因此您可以使用一个命令更新成员资格。
Add-ADGroupMember
答案 1 :(得分:0)
根据文档:
Members参数指定要添加到组中的新成员。您 可以通过其专有名称(DN)GUID来识别新成员, 安全标识符(SID)或SAM帐户名。您还可以指定 用户,计算机和组对象变量,例如
$<localUserObject>
。如果您指定多个新成员, 使用逗号分隔的列表。您无法通过用户,计算机或组 对象通过管道到达此cmdlet。添加用户,计算机或 使用管道将对象分组为一组,使用Add-ADPrincipalGroupMembership
cmdlet。
因此,您需要一种可接受的格式:
Import-Csv -Path C:\Temp\TESTGroup.csv |
% { Get-ADUser -Filter "UserPrincipalName -eq '$($_.userprincipalname)'" } |
Add-ADGroupMember -Identity 'Group Name' -Members { $_.sAMAccountName }