活动目录

时间:2009-05-07 10:13:38

标签: authentication active-directory passwords

如何从Active Directory获取用户的密码

7 个答案:

答案 0 :(得分:7)

简单,你不能。密码几乎不存储在所有身份验证系统中。相反,它们被转换为存储的“哈希”。然后,当您想要证明您知道密码时,可以使用相同的算法将您键入的密码转换为哈希值,并将其与存储的数据进行比较。

有些人使用公钥/私钥来执行散列,有些则使用替代算法。他们都不能将哈希“解除转换”回原始密码。

答案 1 :(得分:4)

管理员无权访问用户密码,只能更改密码。

答案 2 :(得分:3)

您需要对域控制器的管理访问才能获取哈希值。然后,您需要使用散列破解程序(例如Cain)来查看是否可以恢复密码。如果密码不简单,可能需要数天或数年。

请注意,这在大多数情况下都是非法的,通常会重置密码而不是恢复密码。

答案 3 :(得分:3)

您无法获取存储在Active Directory中的密码,因为它们存储为哈希值。您可以在Active Directory中了解密码的唯一时间是设置密码,但为此您需要使用密码过滤器,并且要将paassword过滤器放置到位,您必须是域控制器上的管理员。

您也无法更改用户密码,因为更改密码要求您知道用户的现有密码。您只能重置用户的密码,但为此您需要在用户帐户上拥有“重置密码”权限。

重置用户密码是一项管理任务,通常委托给初级管理员,在大多数情况下,委派管理员可以重置用户帐户密码。

如果有兴趣,可以在此处讨论更改Active Directory用户帐户密码与重置Active Directory用户帐户密码之间的区别:

http://www.activedirsec.org/t43140076/what-is-the-difference-between-the-change-password-and-reset/

答案 4 :(得分:1)

默认情况下,Active Directory配置为使用散列算法来存储用户密码。但是,您可以覆盖该默认值并使用对称(可逆)加密。这允许通过可用的标准API检索密码。关于AD的对称加密的Here's a link

此外,正如另一张海报所提到的,当用户更改密码更改时,您可以使用密码过滤器来捕获密码更改和新密码。除此之外,必须重置密码。哈希并不意味着被打破或恢复,这就是重点。

答案 5 :(得分:0)

以编程方式通过支持的API,您无法从Active Directory读取密码,但您可以通过实施Password Filter在设置密码时获取密码。

答案 6 :(得分:-1)

我很怀疑这是否可能,因为它是一个密码。但是你可能会在ServerFault中问这个好运吗?

我不确定您是否能够获得访问权限,但一旦完成测试,您就可以注册。