为什么我不能使用ldifde工具更改密码?

我试图用以下命令使用ldifde工具更改用户密码:

ldifde -i -h -f .\password.ldf -J ./

以下是password.ldf文件中的一个条目:

 dn: CN=pwtest,OU=Engineering,DC=MyDc,DC=com changetype: modify replace: unicodePwd unicodePwd::Ik51bWJza3VsbDIxIg== - 

我在这个例子中更改了域名和密码,但是我确信我使用的密码符合密码策略。 我通过重置用户的密码之一,我试图更新他们所有的密码。

我收到以下错误:

 Add error on entry starting on line 2: Unwilling To Perform The server side error is: 0x1f A device attached to the system is not functioning. The extended server error is: 0000001F: SvcErr: DSID-031A129B, problem 5003 (WILL_NOT_PERFORM), data 0 

我通过RDP以pipe理员身份login到机器,并使用本地PowerShell。 我已经更新了密码昨天使用这种方法,它工作正常。 现在唯一不同的是,我可以知道,用户现在有密码,我试图改变它们。 另外,这是Windows Server 2012 Datacenter。

AD需要SSL连接才能更改密码。 尝试将-t 636添加到您的命令。

例如ldifde -i -h -t 636 -f。\ password.ldf -J ./

您可能还有其他缺失的依赖项,例如高encryption包等。

从评论添加:

它与你如何编码密码有关。 你错过了一个重要的步骤。 这不仅仅是base64的文本。 使用www.rlmueller.net/Base64.htm中的PwdToBase64.txt将其重命名为.vbs,并将其正确编码。