Active Directory 密码策略的全面指南
Sep 11, 2025
弱口令或被窃取的密码仍然是以 Active Directory为目标的攻击者的首要切入点。 强密码策略 — 涵盖长度、复杂度、复用、锁定以及审计 — 对降低账户接管风险并确保合规至关重要。现代最佳实践倾向于使用长且复杂的密码,并由如自助重置和策略强制执行等工具支持,以在安全性与可用性之间取得平衡。
攻击者潜入企业网络的最常见方式之一,是攻破合法用户账号的用户名和密码。用户名通常很容易猜测,因为它们会遵循组织中既定的命名规范,例如 FirstnameLastname@domain.com。
不幸的是,如今威胁行为者要攻破这种基础密码也同样出奇地容易。例如,他们可以运行一段程序,对某个特定用户账号尝试多种可能的密码。当他们猜中正确密码后,就能潜入网络,并开始横向移动以窃取敏感数据、释放勒索软件或造成其他损害。
因此,必须建立一项强密码策略,让密码变得更难被猜中。如果你的组织将 Active Directory (AD) 作为主要身份存储(identity store),那么本文将会有所帮助。它解释了 AD 中可用的域密码策略设置,展示如何检查你当前的策略,并详细介绍现代 密码策略最佳实践。随后,还将探讨第三方解决方案如何在不让用户感到沮丧、也不增加帮助台来电量的情况下,帮助你获得强密码策略带来的收益。
强密码策略的优势
密码策略会为密码组成设定标准,例如最小密码长度和复杂性要求。它们还可以防止重复使用以前的密码,控制密码必须更换的频率,甚至确保一旦失败的登录尝试次数过多,就会导致账户锁定。
对所有用户账户实施强而一致的密码要求策略,可以通过阻止 password spraying、暴力破解(brute force)和凭据填充(credential-stuffing)攻击,显著降低账户被攻破的风险。此外,为了符合包括 HIPAA 以及 GDPR 在内的广泛法规和行业标准,必须制定强密码策略。
如何配置 Active Directory 密码策略
如何配置您的密码策略
要配置密码策略(Password Policy),请在 Windows 服务器上打开 Group Policy Management 控制台(GPMC),并导航到“计算机配置 > Windows 设置 > 安全设置 > 帐户策略”。选择 Password Policy ,然后配置右侧的每一项策略设置。
应该选择哪些设置?近年来,密码管理的方法已显著演进:当前的最佳实践降低了对频繁更改密码的强调,并将重点转向密码强度。Microsoft 的默认设置应视为起点;为实现强大的安全性与合规性,请参考以下建议:
Setting | Description | Default | Best Practices |
|---|---|---|---|
|
Enforce password history |
The number of unique passwords a user must create before reusing an old password |
24 |
Enforce password history to prevent users from reusing old passwords repeatedly. |
|
Maximum password age |
How long a password can exist before it expires and the user must choose a different one |
42 days |
Consider setting a high maximum password age and forcing users to change their passwords only when an event like a breach makes it prudent. |
|
Maximum password age |
How long a password must exist before the user is permitted to change it |
1 day |
Keep the default setting to prevent users from circumventing the “enforce password history” setting by performing multiple password resets in a row in order to reuse a preferred password. |
|
Minimum password length |
The fewest number of characters a password can have |
7 |
Microsoft recommends a setting of at least 12 characters because modern password cracking tools can crack 8-character strings in seconds. |
|
Minimum password length audit |
Allows administrators to audit password changes that would violate a potential new minimum password length policy before actually enforcing it. |
1 |
Microsoft recommends leaving the auditing policy enabled for three to six months to detect all software that does not support the proposed minimum password length. |
|
Password must meet complexity requirements |
Controls whether passwords must meet the following two requirements: A password may not contain the user’s account name value or display name.A password must include characters from 3 of the following categories:Uppercase letters Lowercase letters Base 10 digits Special characters, such as $ or % |
Enabled |
Keep the password complexity setting enabled. Requiring passwords to meet complexity requirements can slow down automated attacks and reduce the likelihood of users reusing passwords across multiple accounts. |
|
Store passwords using reversible encryption |
Supports apps that require users to enter a password for authentication |
Disabled |
Keep this setting disabled to prevent attackers from decrypting passwords that they manage to steal. |
使用 Netwrix Password Policy Enforcer 增强安全性
了解 Netwrix 如何简化对安全且符合规范的密码策略的强制执行
如何配置帐户锁定策略
您应当用“帐户锁定策略(Account Lockout Policy)”补充“密码策略(Password Policy)”,以确保攻击者不会获得无限次猜测帐户密码的机会。
在 GPMC 中,依次选择 Account Policies 下的 Account Lockout Policies。可用设置将显示在右侧。特别是,您可以指定触发锁定所需的失败登录尝试次数,以及锁定持续的时间。
帐户锁定持续时间: 一旦达到允许的最大失败登录尝试次数,该帐户将被锁定的分钟数。
帐户锁定阈值: 触发对该帐户进行锁定的失败登录尝试次数
允许对 Administrator 帐户进行锁定: 确定内置的 Administrator 帐户是否适用于帐户锁定策略。
在以下时间后重置帐户锁定计数器: 确定在失败的登录尝试之后,需经过多少分钟才能将失败的登录尝试计数器重置为零。
如何修改您的密码策略
在某个阶段,您可能需要更新您的密码策略或帐户锁定策略。例如,在发生安全事件后,您可能希望采用不同的设置,或需要遵循新的监管要求。修改现有密码策略的 GPO 就像返回 GPMC 并更改设置一样简单。整个过程只需几分钟即可完成。
如何为不同组创建不同的密码策略
Active Directory 支持细粒度密码策略,这使您能够为不同组和用户应用不同的策略。(请注意,您的林功能级别必须至少为 Windows Server 2008。)例如,您可以要求像管理员这样的高风险组使用更长的密码,并且比其他用户更频繁地更改密码。
您可以通过两种方式创建和管理细粒度密码策略:
- 在 Active Directory Management Center (ADAC) 中,点击你的域,导航到“System”文件夹,点击“Password Settings”容器,然后配置一个“Password Settings”对象(PSO)。接着将 PSO 应用到所需的组。
- 另外,你也可以使用 PowerShell 命令 New-ADFineGrainedPasswordPolicy.
如何监控并排查密码策略
如何在 Active Directory 中检查密码策略
你应密切关注你的 Active Directory 密码策略 设置。实现这一点的方法包括以下内容:
- 组策略管理控制台 — 一种选择是使用 GPMC,如前所示。
- 本地安全策略 — 在已加入域的计算机上打开此工具,请在“运行”对话框或搜索栏中输入 secpol.msc。然后导航到“密码策略”设置。
- 命令提示符 — 你可以以管理员权限打开命令提示符,然后使用命令 net accounts 来显示当前的密码策略设置。
- PowerShell — 显示域的密码策略设置的另一种方法是使用 Get-ADDefaultDomainPasswordPolicy 命令。
如何排查密码策略问题
如果用户未收到最新的密码策略,你可以在其计算机上运行以下命令,以调查并尝试解决该问题:
- gpresult /r — 显示应用到用户和计算机的 GPO
- gpupdate /force — 应用当前的 GPO 设置
密码策略问题也可能与域控制器(DC)复制问题有关——如果并非所有 DC 都具有相同的密码策略设置,用户可能会根据其认证所连接的 DC 而遇到结果不一致的情况。要查看域控制器之间是否存在任何复制失败或延迟,请使用 repadmin /replsummary 命令。
应对常见的密码策略挑战
在实施密码策略时,最根本的挑战在于在“追求强安全性”的愿望与“现实中用户往往会用削弱安全性的方式来应对过于严格的规则”之间取得平衡。例如,要求频繁更改密码可以降低因被盗密码数据库带来的风险——但这可能导致用户采取削弱安全性的变通做法,例如选择更弱的密码,或仅仅每次在密码末尾增加一个数字。类似地,要求用户创建长且复杂的密码会降低黑客通过猜测或破解这些密码来获取公司网络访问权限的风险。然而,用户可能会为了避免令人沮丧的锁定(lockout)而转而把密码写下来。
恰当的沟通可以帮助缓解这一问题。安全团队不仅要告诉用户密码要求是什么,还要说明这些要求为何必要,以及试图规避它们会如何导致数据泄露和其他安全事件。当密码策略发生变更时,请务必让帮助台团队准备好,为用户提供额外支持。
还有一些第三方工具也能提供帮助。特别是,可以考虑以下类型的解决方案:
- 密码策略强制执行软件使您能够逐步实施密码策略的变更,并在此期间提供宽限期:鼓励用户遵守新的要求,但不强制他们立即符合。
- 密码管理器工具 使用户能够轻松遵守严格的策略。该软件会为其每个账户生成并存储强且唯一的密码,并在需要时自动替用户输入。这样一来,用户只需创建并记住一个密码——即密码管理器应用的密码。
- 自助式密码重置软件 让用户能够在不联系帮助台的情况下,安全地重置或更改自己的密码,并解锁他们的账户。由于锁定带来的痛苦更少,用户不太可能通过不安全的变通办法来试图规避锁定。
结论
强有力的密码策略是健全网络安全战略的关键组成部分。通过遵循此处详述的最佳实践,你可以降低对手接管账户的风险,从而提升安全性与合规性。
要增加额外的安全层,请要求多因素认证(MFA),而不仅仅是用户 ID 和密码;尤其要用于高风险场景,例如管理员登录,以及访问敏感或受监管数据的请求。
如需更多信息,请阅读我们的 AD 中实现强安全性的密码策略最佳实践。
FAQ
Active Directory 中的密码策略是什么?
AD 组策略提供“密码策略”,使管理员能够为用户密码制定标准。例如,他们可以设置最小密码长度、禁止重复使用以前的密码,并控制密码必须更改的频率。
我可以在哪里查看 Active Directory 中的密码要求?
你可以使用以下任意方法查看组策略中的密码策略设置:
- 组策略管理控制台 — 导航到 计算机配置 > 策略 > Windows 设置 > 安全设置 > 帐户策略 > 密码策略。
- PowerShell — 使用以下 cmdlet:Get-ADDefaultDomainPasswordPolicy。
- 本地安全策略工具 — 在已加入域的计算机上,运行 secpol.msc。
- Active Directory 管理中心 — 检查“密码设置”容器。
如何编辑 Active Directory 中的密码策略?
您可以使用 Group Policy Management Console 轻松编辑 AD 密码策略。在大多数情况下,密码设置将属于 Default Domain 策略的一部分。
如何在 Active Directory 中检查密码到期时间?
有多种方法可以实现。这里有两个选项:
- 在 Group Policy Management Console 中,导航到 Computer Configuration > Policies > Windows Settings > Security Settings > Account Policies > Password Policy。
- 运行以下 PowerShell 命令:Get-ADDefaultDomainPasswordPolicy | Select MaxPasswordAge。
AD 密码最长可以有多长?
AD 用户帐户密码的最大长度为 256 个字符。不过,对于普通用户,12–14 个字符就足够了。
什么是密码复杂度?
密码复杂度是指用于控制密码本身组成的规则。其目标是防止用户选择弱密码,例如简单的字典单词或姓名——这类密码更容易被黑客猜测或破解。启用后,AD 密码复杂度策略会强制用户选择满足以下要求的密码:
- 不要 包含用户的帐户名称值或显示名称
- 请 从以下类别中选用三类字符:大写字母、小写字母、10进制数字,以及 $ 或 % 等特殊字符
我应该如何为密码分配组策略?
在 Active Directory 中,使用组策略(Group Policy)来配置和应用密码策略。尽管 Microsoft 通常建议将组策略分配到组织单位(OU)级别,但最佳实践是使用 Default Domain Policy 来控制 GPO 密码策略设置,因为它会应用到 Active Directory 域 中的所有用户和计算机。这样做是为了确保密码策略应用到所有域用户帐户。
常见问题
分享到
了解更多
关于作者
Ian Andersen
Pre Sales Engineering 副总裁(VP)
Ian 拥有超过二十年的 IT 经验,专注于数据与访问治理。作为 Netwrix 的 Pre Sales Engineering 副总裁(VP),他负责确保为全球客户顺利部署产品,并实现身份管理集成。凭借长期的职业经历,他能够满足各类规模组织的需求,其经历包括为美国财富 100 强金融机构领导安全架构团队,以及为中小型企业提供安全解决方案。