Skip to main content
Version: 2.2.1-preview

AD-FGPP-03 - Fine-grained password policy setting counts should be retrievable

Overview​

Having a detailed breakdown of fine-grained password policy settings allows you to:

  • Audit security levels: Verify that privileged accounts have stronger policies
  • Identify misconfigurations: Spot policies that may be incorrectly configured
  • Ensure compliance: Validate that all policies meet minimum security requirements
  • Document coverage: Understand exactly what controls are in place

This detailed view complements the value count by showing the actual settings rather than just the number of variations.

Security Recommendation​

When reviewing fine-grained password policy settings, ensure:

User TypeMin LengthMax AgeHistoryComplexityLockout Threshold
Domain Admins15+60 days24+Enabled3-5
Service Accounts20+Never24+Enabled3-5
Regular Users14+90 days24Enabled5

To review and modify policy settings:

  1. Open Active Directory Administrative Center
  2. Navigate to System > Password Settings Container
  3. Double-click each policy to review settings
  4. Adjust as needed to meet security requirements

How the Test Works​

This test retrieves all fine-grained password policies using Get-ADFineGrainedPasswordPolicy and creates a table showing key settings for each policy:

  • Policy name
  • Minimum password length
  • Maximum password age (in days)
  • Password history count
  • Complexity enabled (Yes/No)
  • Lockout threshold
  • Test-MtAdFineGrainedPolicyCount - Counts the number of FGPPs
  • Test-MtAdFineGrainedPolicyValueCount - Shows distinct values across policies
  • Test-MtAdFineGrainedPolicyAppliesTo - Shows which users/groups each policy applies to

Test Metadata​

FieldValue
Test IDAD-FGPP-03
SeverityInfo
SuiteActive Directory
CategoryAD.PasswordPolicy
PowerShell testTest-MtAdFineGrainedPolicySettingCounts
TagsAD, AD-FGPP-03, AD.PasswordPolicy

Source​

  • Pester test: tests/ad/passwordpolicy/Test-MtAdFineGrainedPolicySettingCounts.Tests.ps1
  • PowerShell source: powershell/public/ad/passwordpolicy/Test-MtAdFineGrainedPolicySettingCounts.ps1