使用ps1脚本将组添加到AD用户

时间:2018-03-15 08:26:12

标签: powershell active-directory active-directory-group ps1

使用以下脚本我想向AD用户添加一个组,但它没有这样做,我没有收到任何错误。

param($Userid,$AdditionalGroup)

# Get user
$User = Get-ADUser `
    -Filter "SamAccountName -eq $Userid"

# Add comment
Add-ADGroupMember `
    -Identity $AdditionalGroup `
    -Members $User

3 个答案:

答案 0 :(得分:2)

这样的过滤对我来说不起作用(并产生错误),但是在$ Userid之前和之后添加'就可以了。

param($Userid,$AdditionalGroup)

# Get user
$User = Get-ADUser `
    -Filter "SamAccountName -eq '$Userid'"

# Add comment
Add-ADGroupMember `
    -Identity $AdditionalGroup `
    -Members $User

答案 1 :(得分:1)

由于您只是在sAMAccountName上进行直接-eq匹配,因此您不需要使用-FilterIdentity参数将接受此操作以及其他输入:

  
      
  • 尊贵的名字
  •   
  • GUID(objectGUID)
  •   
  • 安全标识符(objectSid)
  •   
  • SAM帐户名称(sAMAccountName)
  •   
     

documentation link

这使您的代码非常简单:

$User = Get-ADUser -Identity $Userid

为了进一步简化,您根本不需要使用Get-ADUser

Add-ADGroupMember -Memberslink)接受与我在Identity中提到的相同的参数...

所以你可以直接使用$UserID

param($Userid,$AdditionalGroup)

Add-ADGroupMember -Identity $AdditionalGroup -Members $UserID

答案 2 :(得分:0)

这也可以(没有单引号):

$User = Get-ADUser -Filter {SamAccountName -eq $Userid}