Hi,
The behavior you are seeing is driven by a per-property comparison mismatch. When the autoenrollment task runs, it evaluates the machine's current Active Directory attributes against the extensions stamped on the local certificate. If your certificate template is configured to build the subject name from Active Directory, but the Certificate Authority drops or alters certain attributes during issuance due to security configurations or DNS discrepancies, the client detects this mismatch. The client assumes its current certificate is inaccurate and requests a renewal, but the Certificate Authority simply strips the attribute again, plunging the machine into a continuous renewal loop every time the policy refreshes.
The other theoretical triggers you mentioned do not fit the observed behavior. An overlapping renewal period where the window exceeds the validity period would trigger aggressive, immediate renewal requests upon every Group Policy background refresh, rather than a delayed one to two-day cycle. Furthermore, a superseded templates relationship or multiple issuing authorities would not natively cause this specific loop unless they enforce conflicting issuance policies, which ultimately leads right back to the property mismatch scenario.
To capture the engine's decision logic, you must move beyond standard event logging. The verbose autoenrollment logging you enabled via certutil modifies the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\AutoEnrollment registry key to increase the log level, but this and the CAPI2 operational logs only record the final outcome of an operation. They do not capture the internal evaluation math. You must utilize Event Tracing for Windows to capture the debug-level process as it happens. By running the built-in logman utility to trace the AutoEnrollment provider at GUID F0DB7EF8-B6F3-4005-9937-FEB77B9E1B43 and the CertEnroll provider at GUID 54164045-7C50-4905-963F-E5BC1EEF0CCA, you will expose the exact programmatic check forcing the renewal path during a machine policy update.
Domic