我在powershell中使用New-ADUser命令有一个小问题。 我正在尝试从文件中创建一堆用户,而我似乎无法做到这一点。
我确实创建了帐户,但是当我尝试登录时,它告诉我“使用的连接方法未经授权”(如果消息不准确,我很抱歉,我正在使用的系统不是英文)
我正在使用Windows Server 2012 R2上安装的直接开箱即用AD。暂时保留所有内容。
我正在使用的命令是:
for ($i = $BeginLoopAt; $i -le $EndLoopAt; $i++) {
$Id = $WorkSheet.cells.Item($i, 1).text
$FirstName = $WorkSheet.cells.Item($i, 2).text
$LastName = $WorkSheet.cells.Item($i, 3).text
$Country = $WorkSheet.cells.Item($i, 4).text
$Location = $WorkSheet.cells.Item($i, 5).text
$Department = $WorkSheet.cells.Item($i, 6).text
$AccountName = ($FirstName.Substring(0, 1) + $LastName).ToLower()
New-ADUser -Name "$AccountName" -EmployeeID $Id -Country $County -City $Location -Department $Department -GivenName $FirstName -Surname $LastName -Path "$UserPath" -ChangePasswordAtLogon $true -Enabled $true -accountPassword (ConvertTo-SecureString -AsPlainText "Azerty01" -Force) -passThru
看到错误,我认为错误来自于我没有添加-AuthType这一事实,但在尝试使用-AuthType中的两个选项后,错误不会消失。 如果我选择-AuthType Basic
,它会打印以下错误New-ADUser : The username is not provided. Specify username in ClientCredentials.
At C:\Users\Administrateur\Desktop\script.ps1:132 char:5
+ New-ADUser -Name "$AccountName" -EmployeeID $Id -Country $County -City $Loca ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [New-ADUser], ADException
+ FullyQualifiedErrorId : ActiveDirectoryServer:0,Microsoft.ActiveDirectory.Management.Commands.NewADUser
好吧,Basic AuthType似乎是用于SSL登录,这不是我想要的
使用Powershell创建的用户的属性与通过GUI创建的用户之间几乎没有区别。 (没有我见过) 但是通过GUI创建的用户可以登录,而由PowerShell创建的用户则不能登录。
我错过了什么? 提前谢谢!
编辑:
经过一些测试,我意识到,事实上,我无法使用AD安装后创建的任何帐户登录...有点失败之前,我以为我创建了一个名为User3的用户,因为其他名称被采取了,我在AD安装之前用User2进行了测试...
意思是,我只能登录安装AD DS之前存在的帐户,我绝对不知道为什么。
答案 0 :(得分:0)
更改行:-ChangePasswordAtLogon $ true为-ChangePasswordAtLogon 0
答案 1 :(得分:-1)
在登录之前,您必须至少指定一个SAMAccountName(使用-SamAccountName
选项),因为这是在Windows的许多地方使用的pre-windows2000登录名(它也在某些默认情况下使用)用户的环境变量,如%username%
)。
有关New-ADUser
的文档,请参阅https://technet.microsoft.com/en-us/library/ee617253.aspx。