Я хочу добавить пользователя в группу на основе имени из файла CVS - PullRequest
0 голосов
/ 03 ноября 2011

У меня есть следующий код, который может сделать пользователя, однако, когда я записываю группу в CSV-файл, пользователь не добавляется в указанную группу.Я могу запустить это прямо на сервере.Группа находится в подгруппе гораздо большей группы.поэтому я также не уверен, как сообщить Powershell, что я хочу группу из группы.

это путь, это будет работать?BILOMNI.BILPROMETRIC.ROOT / EasyServe_OU / EasyServeChannel_OU / Channel_CenterUsers_OU

У меня также есть уникальное имя группы RequestingAccess_CenterUsers_GG

        $computer = $ENV:COMPUTERNAME;
        $users = Import-Csv "C:\Users.csv";

    Foreach ($user in $users)
    {
    #for ($i=0; $i -le 2000; $i++)
    #{
        # Grab required info
        $userName = $user.User
        $objOu = [ADSI]"WinNT://$computer"
        $Group = $user.Group

        # Create user
        $objUser = $objOU.Create("User", $userName + $i)
        $objUser.setpassword($user.password)
        $objUser.SetInfo()

        # Find target group and add the user to it
        $de = [ADSI]"WinNT://$computer/$Group,Group"
        $de.add([ADSI]"WinNT://$computer/$userName")

       # }
    }

    The following exception occurred while retrieving member "add": "An invalid dn syntax has been specified.
"
At C:\Users\dennis.hayden\Desktop\makingbilusers.ps1:20 char:12

+     $de.add <<<< ([ADSI]"LDAP://$computer/$userName")

    + CategoryInfo          : NotSpecified: (:) [], ExtendedTypeSystemException

    + FullyQualifiedErrorId : CatchFromBaseGetMember

Ниже указан файл CSV, которым я пользуюсь:

1 Ответ

1 голос
/ 03 ноября 2011

Можете ли вы попытаться изменить все свои Wint:// на LDAP:// и немного изменить свой код следующим образом:

# Find target group and add the user to it
$de = [ADSI]"LDAP://$computer/$Group,Group"
$user=[ADSI]"LDAP://$computer/$userName"
$de.add($user.Path)

# Commit
$de.setinfo()
...