PDA

Показать полную графическую версию : [решено] Не работает импорт пользователей в AD из CSV-файла


fcdm25
19-02-2014, 22:03
Здравствуйте, сегодня решил загрузить пользователей в AD из csv. В интернете нашел много примеров, но они почему то не запускаются на моем сервере и выдает ошибку


ConvertTo-SecureString : Не удается привязать аргумент к параметру "String", так как он имеет значение NULL.
C:\Users\Администратор\Desktop\script.ps1:19 знак:239
+ ... g -AsPlainText $PassWord -Force) -Enabled $true -Path $OU
+ ~~~~~~~~~
+ CategoryInfo : InvalidData: (:) [ConvertTo-SecureString], ParameterBindingValidationException
+ FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.ConvertToSecureStringCo mmand

ConvertTo-SecureString : Не удается привязать аргумент к параметру "String", так как он имеет значение NULL.
C:\Users\Администратор\Desktop\script.ps1:19 знак:239
+ ... g -AsPlainText $PassWord -Force) -Enabled $true -Path $OU
+ ~~~~~~~~~
+ CategoryInfo : InvalidData: (:) [ConvertTo-SecureString], ParameterBindingValidationException
+ FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.ConvertToSecureStringCo mmand

ConvertTo-SecureString : Не удается привязать аргумент к параметру "String", так как он имеет значение NULL.
C:\Users\Администратор\Desktop\script.ps1:19 знак:239
+ ... g -AsPlainText $PassWord -Force) -Enabled $true -Path $OU
+ ~~~~~~~~~
+ CategoryInfo : InvalidData: (:) [ConvertTo-SecureString], ParameterBindingValidationException
+ FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.ConvertToSecureStringCo mmand


Так же во вложении есть пример нашего леса и csv файл (unicode).
На DC включена функция обработки скриптов
Set-ExecutionPolicy Unrestricted
Загружен модуль
import-module activedirectory
Все данные введены через запятую. Пароль соответствует требованиям.
Кто может помочь с данной проблемой?

fcdm25
21-02-2014, 19:51
Проблема решена
Конечный скрипт
Import-Module ActiveDirectory
$Users = Import-Csv -Delimiter ";" -Path "C:\Users\Администратор\Desktop\user.csv"
$allou = Get-ADOrganizationalUnit -Filter * -SearchBase "OU=GUU,DC=edu,DC=guu"
foreach ($User in $Users)
{
$ou = $allou | Where {$_.Name -eq $User.OU}

if ($ou)
{
$OU = $ou.DistinguishedName
}
else
{
$OU = "OU=Others,OU=GUU, DC=edu,DC=guu"
}

$Password = $User.Password
$Detailedname = $User.LastName + " " + $User.FirstName + " " + $User.MiddleName
$UserFirstname = $User.FirstName
$UserLastName = $User.LastName
$JobTitle = $User.JobTitle
$SAM= $User.Login + "@edu.guu"
New-ADUser -Name $Detailedname -SamAccountName $User.Login -UserPrincipalName $SAM -DisplayName $Detailedname -GivenName $User.FirstName -Surname $User.LastName -Title $JobTitle -AccountPassword (ConvertTo-SecureString -AsPlainText "P@ssword2" -Force) -Enabled $true -Path $OU
}
Заголовок csv файла
Login,Password,LastName,FirstName,MiddleName,OU,JobTitle




© OSzone.net 2001-2012