Active Directory 细粒度密码策略覆盖优先级异常

Jun Liu 100 信誉分
2026-08-06T04:27:42.93+00:00

通过全局组和影子组为用户分配多个细粒度密码策略(FGPP)后,实际生效的却是限制最宽松的策略,而非优先级最高的策略。应如何排查并修正 msDS-PasswordSettings 对象的优先级评估顺序?

Windows 商业版 | Windows 365 企业版
0 个注释 无注释

1 个答案

排序依据: 最新
  1. Harry Phan 32,025 信誉分 独立顾问
    2026-08-18T09:24:10.7433333+00:00

    你好,

    在 Active Directory 中,细粒度密码策略(FGPP)的优先级评估逻辑是严格定义的。系统不会合并多个策略,而是根据 msDS-PasswordSettings 对象的 msDS-PasswordSettingsPrecedence 属性来决定哪一个策略最终生效。数值越小,优先级越高。如果用户同时属于多个全局组或影子组,最终应用的策略就是所有匹配策略里 Precedence 值最小的那一个。

    你目前遇到的情况是系统应用了最宽松的策略而不是你预期的最高优先级策略,这通常说明以下几种可能:

    Precedence 值配置错误:检查每个 FGPP 的 msDS-PasswordSettingsPrecedence 属性,确认你希望生效的策略确实拥有最小的数值。例如,严格策略应设为 1,宽松策略设为 10 或更大。

    组成员关系评估:确认用户确实是目标组的直接成员。FGPP 不会解析嵌套组成员关系,必须是用户直接属于该组。你可以在用户对象上运行 Get-ADUser <SamAccountName> -Properties msDS-ResultantPSO 来查看系统实际应用的策略。

    影子组配置问题:如果你使用影子组来间接分配策略,确保影子组本身被正确绑定到对应的 msDS-PasswordSettings 对象。错误的绑定或优先级设置会导致系统选择另一个策略。

    排查方法建议:

    使用 PowerShell Get-ADFineGrainedPasswordPolicy 查看所有策略的 Precedence 值。

    在用户对象上运行 Get-ADUser <User> -Properties msDS-ResultantPSO,确认最终应用的策略 DN。

    如果发现最终应用的策略并非你预期的那个,调整目标策略的 msDS-PasswordSettingsPrecedence 值为更小的数值,然后强制刷新组成员关系。

    修正方式就是确保严格策略的 Precedence 值最小,并且用户直接属于该策略绑定的组。这样系统在评估时就会正确应用优先级最高的策略,而不是宽松的那一个。

    我希望你能在这里找到有用的信息。如果这能帮助你更深入理解问题,欢迎接受答案。如果还有其他问题,请随时留言。祝你有美好的一天!

    HP.

    此答案是否有帮助?

    0 个注释 无注释

你的答案

提问者可以将答案标记为“已接受”,审查方可以将答案标记为“已推荐”,这有助于用户了解答案是否解决了提问者的问题。