-members参数中的Add-ADGroupMember错误

时间:2019-02-07 10:33:26

标签: powershell csv active-directory

我正在尝试运行一个简单的PowerShell脚本,该脚本使我能够向AD组添加多个成员。我已使用以下命令将用户的samaccountname从.csv文件导入到数组中。

$member = Import-Csv -Path c:\file.csv

我还打印了该数组的值,以确保我正确设置了SAMaccountnames,输出如下所示:

user
user1
user2

此任务栏包含大约700个用户名。

然后我运行以下命令:

foreach ($user in $member){Add-ADGroupMember -Identity Group_Name -Members $user}

但是,出现以下错误:

Add-ADGroupMember : Cannot bind parameter 'Members'. Cannot convert value 
"@{User=user1}" to type "Microsoft.ActiveDirectory.Management.ADPrincipal".
Error: "Cannot convert the "@{User=user1}" value of type "System.Management.
Automation.PSCustomObject" to type "Microsoft.ActiveDirectory.Management.
ADPrincipal"."
At line:1 char:77
+ foreach ($user in $member){Add-ADGroupMember -Identity Bastion_usr -Members $use ...
+                                                                             ~~~~
   + CategoryInfo          : InvalidArgument: (:) [Add-ADGroupMember], ParameterBindingException
   + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.ActiveDirectory.Management.Commands.AddADGroupMember

用户是CSV文件中的标题。

在编写此脚本时,我的思考过程是:

  • 将成员[当前值]添加到Group_Name;
  • 增加当前值。

我的问题是会员将samaccountname的值设为@{user=user1}吗?如果是,那么我们可以从其前面删除@{user=,从其结尾删除}吗?

如果先前的假设是错误的,那么我们如何将正确的值传递给-Members

0 个答案:

没有答案