【问题标题】:ChangePasswordAtLogon not applying on New-ADUser when enabled is falseChangePasswordAtLogon 在启用时不应用于 New-ADUser 为 false
【发布时间】:2016-05-10 12:40:13
【问题描述】:

使用powershell 2.0,我有一个简单的脚本来创建一个New-ADUser。用户必须在下次登录时更改密码,并且必须禁用该帐户。这一直有效,直到我在禁用模式下创建帐户。

根据文档,确保 PasswordNeverExpires$false 将允许在登录时更改密码,但这没有帮助。如果 enabled 设置为 false,有谁知道为什么 ChangePasswordAtLogon 不适用?

代码(我已经包含了我正在使用的其他设置,以防它们很重要):

New-ADUser -Name "NewPerson" `
           -Path "DC=WhereEver" `
           -AccountPassword $SecureStringHere `
           -PasswordNeverExpires $False `
           -ChangePasswordAtLogon $True `
           -enabled $False `
           -UserPrinciplaName "NewPerson" `
           -DisplayName "NewPerson" `
           -Description "NewPerson" `
           -ProfilePath "path" `
           -ScriptPath "path" 

如果您不知道如何解决此问题,请对可能出现的问题提出任何想法,谢谢!

【问题讨论】:

    标签: powershell active-directory powershell-2.0


    【解决方案1】:

    显然是密码导致了效果,尽管我无法解释原因。 documentation 没有说明这个 AFAICS。从New-ADUser 语句中删除-ChangePasswordAtLogon $True,然后通过

    设置选项
    Set-ADUser -Identity 'NewPerson' -ChangePasswordAtLogon $true
    

    帐户应该按照您期望的方式创建。

    【讨论】:

    • New-ADUser ... -PassThru | Set-ADUder -ChangePasswordAtLogon:$true。原因是具有有效密码的帐户是更改密码的先决条件。创建用户时,密码参数可能违反/失败密码过滤器/策略,因此无法保证ChangePasswordAtLogon
    • 感谢您的澄清。
    • 密码确实符合要求,但从 New-AdUser 中取出 ChangePasswordAtLogon 似乎可以正常工作。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-31
    相关资源
    最近更新 更多