运行powershell脚本以使用Import-Csv和New-QADUser将用户从csv导入Active Directory时出错

时间:2010-08-17 16:33:31

标签: powershell active-directory windows-server-2008 powergui

我的脚本如下所示:

$Users = Import-Csv "C:\users.csv"
foreach ($User in $Users)
{
    New-QADUser -Name $User.Name `
        -ParentContainer $User.OU `
        -FirstName $User.FirstName `
        -LastName $User.LastName `
        -UserPassword $User.userPassword `
        -SamAccountName $User.sAMAccountName `
}

当我运行它时,我收到以下错误:

DefaultNamingContext                               Type            
--------------------                               ----            
DC=example,DC=domain,DC=org                  ActiveDirectory 
The server is unwilling to process the request. (Exception from HRESULT: 0x80072035)
At :line:5 char:12
+   New-QADUser <<<<  -Name $User.Name `

我的CSV看起来像这样:

Name,FirstName,LastName,sAMAccountName,UserPassword,OU
Joe Bob,Joe,Bob,jb241277,4gh60b4,"OU=2010,OU=Sub,OU=Users,OU=MAIN,DC=example,DC=domain,DC=org"

不确定发生了什么,任何帮助将不胜感激。这是Win2K8 Ent。

中林中的子域

1 个答案:

答案 0 :(得分:0)

由于某种原因,可能会针对全局目录尝试此操作。您的代码对我来说很好,但是当我尝试对GC执行此操作时会出现错误,这是预期的。 connect-QADService cmdlet指定要连接的位置。如果您在new-qaduser代码之前设置此项,请仔细检查以确保“-UseGlobalCatalog”不在其中。

作为疑难解答步骤,您可以尝试指定特定的域控制器,以查看是否会更改错误。

$Users = Import-Csv "C:\users.csv"
foreach ($User in $Users)
{
    New-QADUser -Name $User.Name `
        -ParentContainer $User.OU `
        -FirstName $User.FirstName `
        -LastName $User.LastName `
        -UserPassword $User.userPassword `
        -SamAccountName $User.sAMAccountName `
        -Service $DomainController `
}

这将告诉它针对特定域控制器而不是全局目录执行操作。