【问题标题】:Adding user to group after running New-ADUser运行 New-ADUser 后将用户添加到组
【发布时间】:2016-03-17 12:10:17
【问题描述】:

所以我的第一个 powershell 项目即将结束,我一直在创建一个脚本,用于将用户从仅包含名字和姓氏的 CSV 文件导入活动目录。

Import-Csv users.csv |
    select Surname,
        @{n='GivenName';e={$_.'FirstName'}},
        @{n='samaccountname';e={$_.FirstName.substring(0,2) + $_.Surname}},
        @{n='UserPrincipalName';e={$_.FirstName.substring(0,2) + $_.Surname}},
        @{n='Name';e={$_.'FirstName' + ' ' + $_.'Surname'}} |
    New-ADUser -Enabled $true -AccountPassword (ConvertTo-SecureString -AsPlainText "Password1" -Force) -ChangePasswordAtLogon $true -Path "OU=Intake 20XX,OU=Students,OU=Ravenloft users,DC=RAVENLOFT,DC=test" -ProfilePath {"\\TESTSVR\Profiles$\Intake20XX\" +$_.SamAccountName} -HomeDrive "D:" -HomeDirectory {"\\TESTSVR\Work$\Intake20XX\" +$_.SamAccountName}

现在我的最后一项工作是将所有这些新用户添加到一个名为 StudentGroup 的组中,我知道 new-aduser 中没有参数可以编辑 AD 中的“成员”字段。那么最好的方法是什么?

【问题讨论】:

  • New-ADUser ... -PassThru |Foreach-Object {Add-ADGroupMember -Identity "DN of StudentGroup" -Members $_}
  • @Mathias R. Jessen Brilliant,谢谢伙计,事情已经解决了。是时候对 -Passthru 进行更多研究了。

标签: powershell active-directory


【解决方案1】:

我更喜欢在两个单独的行上这样做

New-ADUser ...
Add-ADGroupMember -Identity "name_of_group" -Members "username"

如果你想把它写成一行,归功于 Mathias 的评论(使用 -PassThru

New-ADUser ... -PassThru | % {Add-ADGroupMember -Identity "DN of StudentGroup" -Members $_}

如何将其融入脚本取决于您

-Members 可以接受一个数组或单个用户名字符串

New-ADUser ...
Add-ADGroupMember -Identity "name_of_group" -Members @("username1","username2")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-19
    • 2022-08-17
    • 2020-05-02
    相关资源
    最近更新 更多