The described approach of using a dedicated GPO linked to the Domain Controllers OU to disable the Print Spooler service is valid and aligns with Microsoft security guidance, with a few important considerations.
Summary of the approach:
- Create and link a GPO to the Domain Controllers OU.
- In that GPO, configure the Print Spooler service to be Disabled.
- Apply the GPO so it takes effect on all DCs in that OU.
This matches the recommended mitigation that domain controllers and Active Directory admin systems should have the Print Spooler service disabled, preferably via GPO:
- The security assessment explicitly states that due to exposure risk, domain controllers and AD admin systems need to have the Print Spooler service disabled, and that the recommended way is using a Group Policy Object (GPO).
- It also notes that any server is potentially at risk and that the Print Spooler service should be disabled on all servers that do not require it.
Additional points to verify before and after applying the GPO:
- Check dependencies and workflows
The security guidance stresses reviewing Print Spooler settings, configurations, and dependencies before disabling it, to avoid breaking active printing workflows. - Understand impact on AD print pruning
- On a domain controller, the DC role adds a thread to the spooler service for print pruning (removing stale print queue objects from AD).
- If the spooler service is not running on at least one DC in each site, AD cannot remove old queues that no longer exist.
- If print queue publishing/pruning is still used in the environment, ensure at least one DC per site retains Print Spooler enabled, or accept that stale print queue objects will not be automatically pruned.
- Confirm no conflicting GPOs
- Existing GPOs might configure Print Spooler behavior (for example, allowing the spooler to accept client connections or disabling it as part of other security mitigations).
- Verify that the new GPO’s service setting is not overridden by higher-precedence GPOs.
- Apply and verify
- After creating and linking the GPO, force a policy update on DCs (for example, using
gpupdate /forcefrom an elevated Command Prompt on each DC). - Confirm on each DC that the Print Spooler service is set to Disabled and is Stopped.
- After creating and linking the GPO, force a policy update on DCs (for example, using
If the environment does not rely on DCs for printing or AD print queue publishing/pruning, the described GPO-based method is an appropriate and recommended way to disable the Print Spooler service on domain controllers.
References: