How Windows LAPS replaces a shared administrator password
Windows LAPS gives every PC a separate local administrator password, rotates it automatically, and limits help desk access.

A single local administrator password across hundreds of PCs should be treated as compromised long before the first confirmed incident. Someone has typed it into a remote session, dictated it to a contractor, left it in a ticket, or saved it in a utility that was never meant to hold secrets. While the password is identical on every machine, compromising one workplace provides a ready-made credential for the rest of the fleet.
Windows LAPS changes the model itself: every computer gets its own random password with a limited lifetime, and only designated staff can read it. This is not another complexity requirement for a shared secret. The shared secret is gone. Deployment affects the Active Directory schema, OU permissions, Group Policy, help desk procedures, and event monitoring, so enabling it across the whole domain with one checkbox is a poor approach.
Why one local password exposes the whole fleet
An identical password turns a local account into a portable domain-wide privilege, even though the account remains local in technical terms. The built-in Administrator accounts on different computers are separate records in their local SAM databases, but an operator or attacker can present the same username and password to every machine. If remote administration is allowed, one disclosed secret reduces the path to the next PC to network reachability and an available protocol.
Password theft is not limited to finding a written copy. Code running with local administrator rights can capture derived credentials from memory, intercept input during maintenance, or replace a remote support tool. Even if the security team cleans the first computer quickly, the static secret on the other machines remains valid.
In practice, a shared password spreads beyond the official list of authorized staff. Second-line engineers, field technicians, and contractors know it. It lands in clipboard history, remote-session transcripts, screenshots, and private ticket comments. Changing that password means synchronizing the entire fleet, including laptops away from the network. Teams delay it, and emergency rotation becomes a separate project.
Windows LAPS breaks that connection. The client generates a password for the managed local account, writes the secret and its expiration time to the directory, and later changes the password according to policy. Compromising PC-042 no longer reveals the password for PC-043. This limits the affected area; it does not make the compromised machine safe.
Teams also blur another boundary. A domain administrator account and a local recovery account solve different problems. The first can be revoked centrally, but it may be unavailable when domain connectivity is broken. The second is needed to repair one device, but it must not provide access to another. LAPS keeps local recovery available while removing the shared password.
Some teams propose disabling the local administrator entirely as a cleaner solution. That can work for a uniform fleet with proven recovery procedures. Real fleets still encounter broken trust relationships, failed network drivers, bad policies, and devices in branch offices. If recovery requires a local account, managing a unique secret is safer than hiding a shared password in a vault and assuming nobody copied it.
The domain must be ready before the first policy
Windows LAPS with on-premises Active Directory requires supported client operating systems, an updated forest schema, permission for computers to write their own attributes, and a chosen encryption model. Microsoft includes Windows LAPS in supported Windows 10, Windows 11, Windows Server 2019, 2022, and 2025 versions after the relevant updates. Legacy Microsoft LAPS was a separate product with different attributes and the AdmPwd.PS module. Similar names do not make them the same implementation.
Start by building a version matrix. Include the Windows edition and build, update status, AD or Microsoft Entra ID join state, the computer object's OU, and the presence of legacy LAPS. This table determines how many policies you need. For example, automatic local account creation and management is supported on Windows 11 24H2 and Windows Server 2025 or later. Older clients can rotate a password, but an administrator must create the account in advance for manual mode.
To store passwords in AD, perform the one-time forest-wide schema extension:
Update-LapsADSchema -Verbose
Run this operation from an approved administrative host that has the LAPS module and schema modification rights. Before running it, preserve the current replication status and confirm that the directory owners approved the change. The command adds Windows LAPS attributes to the computer object class. It does not enable client policy or automatically grant help desk access.
The domain functional level determines the quality of protection. At Windows Server 2016 level or later, Windows LAPS can encrypt a password before writing it to AD. Microsoft strongly recommends this encryption in its architecture documentation. At an earlier level, the password sits in a clear-text attribute protected only by access control lists. One mistake in inherited permissions then exposes the secret directly.
Encryption does not require every domain controller to run Windows Server 2025. Client password encryption requires a 2016 domain functional level or later. However, Windows Server 2016 and earlier domain controllers cannot manage their own DSRM password through Windows LAPS. Do not collapse domain level, controller version, and client version into a single statement that the domain is supported.
Check schema replication between sites before the pilot. A client that reaches a controller without the new attributes, or one affected by poor replication, produces noisy and indirect errors. A LAPS deployment will not repair AD health. It will quickly expose places where the directory was already unhealthy.
Decide separately where hybrid devices will store their password. Windows LAPS supports Active Directory and Microsoft Entra ID, but the client stores the current secret in the one directory selected by BackupDirectory. Duplicating the same password in two repositories is not offered as a fallback. The choice should match actual device management and emergency access: can support staff locate the object, obtain permission, and reach the directory during an outage?
Check the Group Policy Central Store as well. Windows LAPS templates may exist on an updated administrative workstation without appearing automatically on every controller or in an old Central Store. An administrator who sees new settings locally can create a GPO that a colleague cannot understand from another workstation. Record the ADMX version, distribution method, and owner of template updates.
OUs and the account define access boundaries
The OU structure should follow password retrieval boundaries, or delegation will be too broad or too fragile. Windows LAPS permissions are assigned to an OU and inherited by computer objects. If first-line support can maintain ordinary workstations but not executive, administrator, and developer computers, those device classes need separate OUs or deliberately separated ACLs.
Do not delegate password reading at the domain root for convenience. It saves a few minutes during setup, but every future computer automatically enters that group's access scope. Define zones instead: branch user PCs, kiosks, classrooms, engineering stations, servers, and privileged workstations. Assign each zone its own reader group and, if necessary, a group that can expire a password early.
Next, choose the managed account. If AdministratorAccountName is empty, Windows LAPS finds the built-in Administrator by its well-known RID 500, not by a localized name. That works well in a multilingual fleet. Renaming the built-in account does not prevent detection and adds little protection on its own.
A custom local account is useful when the organization wants to keep the built-in Administrator disabled. In manual mode, LAPS does not create that account. Another mechanism must create and enable it, add it to the local Administrators group, and use consistent spelling. If policy specifies SvcLocalAdmin while the image created Svc-LocalAdmin, rotation will not start.
On newer operating systems, automatic mode can create and configure a custom account, enable or disable it, and change its name during rotation. Microsoft recommends automatic mode with a custom account where supported. I would not stretch that recommendation across a mixed fleet through one policy: unsupported values may fall back to defaults, and behavior across generations becomes harder to verify. Separate devices by OS capability.
The LAPS account must not run services. If a service or scheduled task uses it, routine rotation will break that process's sign-in. Do not add it to domain groups or use it in an image as a universal installation account. Its purpose is narrow: local administrative access to one computer when the normal centralized route is unavailable.
Deployment starts with permissions and a pilot OU
A working deployment sequence prepares an OU, lets computers write their own password, delegates reading, applies policy, and checks the result on several clients. Start with a pilot OU where you can move different test devices without affecting the production fleet.
Assume the pilot OU is OU=LAPS-Pilot,OU=Workstations,DC=corp,DC=example. First, allow computers in it to update their own LAPS attributes:
Set-LapsADComputerSelfPermission `
-Identity "OU=LAPS-Pilot,OU=Workstations,DC=corp,DC=example"
The expected result identifies the object that received the inheritable permission:
Name DistinguishedName
---- -----------------
LAPS-Pilot OU=LAPS-Pilot,OU=Workstations,DC=corp,DC=example
This is SELF permission, not a user's access to passwords. The computer must be able to write the new secret and expiration time to its own object. Never let a computer group read and decrypt passwords for other machines. Encrypted password history also relies on correctly configured SELF permission, and the cmdlet accounts for it.
Create a separate domain group such as GG-LAPS-Readers-Workstations, then allow it to read attributes only in the pilot OU:
Set-LapsADReadPasswordPermission `
-Identity "OU=LAPS-Pilot,OU=Workstations,DC=corp,DC=example" `
-AllowedPrincipals "CORP\GG-LAPS-Readers-Workstations"
Permission to read the attribute and permission to decrypt its content are not the same. With encryption enabled, the ADPasswordEncryptionPrincipal policy selects one group or user for whom the client encrypts the password. Microsoft uses Domain Admins when the setting is absent. For the help desk, choose a suitable decryption group or wrapper group and keep its membership narrower than the read scope.
Before enabling policy, find unexpected holders of extended rights:
Find-LapsADExtendedRights `
-Identity "OU=LAPS-Pilot,OU=Workstations,DC=corp,DC=example"
Expect to see only known trusted principals, such as SYSTEM and Domain Admins. An extended right on an OU may allow a principal to read confidential attributes, including LAPS attributes. I have found obsolete migration groups and service accounts carrying those rights years after a project ended. Do not remove them blindly, but require an owner and a current task to justify each one.
An AD policy must set BackupDirectory to 2 at minimum. Then configure password age, length, and complexity, enable encryption, select the decryption principal, and choose a post-authentication action. Link the GPO only to the pilot OU, inspect security filtering, and do not apply a conflicting policy through another management mechanism.
Policy must limit the lifetime of a disclosed secret
A sound Windows LAPS policy defines a predictable lifecycle rather than merely choosing the longest password: creation, storage, retrieval, use, and rotation. Length and randomness resist guessing. Uniqueness protects neighboring computers. A short post-use lifetime reduces the window during which a copied password remains valid.
Do not accept built-in defaults without review. Microsoft documents 30 days, 14 characters, and complexity level 4 as default values, but they are not recommendations for every organization. A local recovery account can use a longer password because people rarely type it and never need to memorize it. Compare the selected complexity with local password policy: an incompatible combination prevents creation of a new password and generates event 10027.
For a mixed fleet, begin with settings supported by every target version. A password containing uppercase and lowercase letters, numbers, and special characters has broad support. The improved readable character set and passphrases depend on newer releases, including Windows 11 24H2 and Windows Server 2025. A readable set reduces console input errors when operators type the secret often, but unsupported settings cannot be pushed to every client.
Post-authentication settings are more useful than calendar rotation alone. Windows LAPS can detect a successful sign-in by the managed account, wait for the configured grace period, rotate the password, and perform the selected action. Options include ending sessions or restarting the device, depending on policy value and OS version. A period that is too short interrupts repairs; a full day after a five-minute task leaves the secret valid longer than needed.
For normal support, I choose a period that covers the typical repair with a modest margin and enable restarts only where the consequences are understood. Forced sign-out terminates interactive and SMB sessions and processes running under the managed account on supported versions. Unsaved data may be lost. Policy therefore has to match the operator's procedure, not conceal the absence of one.
Password history is not needed everywhere. It works only with encryption and helps after an image rollback or recovery when the device's current secret and directory record no longer match. Every retained version also adds sensitive data. Enable history where a defined recovery case requires it, select a small justified size, and verify who can decrypt the entries.
The help desk retrieves a password against a ticket
Password retrieval should begin with one named computer and a recorded reason, then end with early rotation. A first-line group should not browse passwords for an entire department out of curiosity. It needs access to one object during a support task, a clear usage window, and a record of who requested the secret.
A minimal working process looks like this:
- The operator verifies the user's identity, ticket number, and exact computer name.
- The operator retrieves the password under a personal account, not a shared shift account.
- They use
.\AdministratororCOMPUTER-NAME\account_nameso Windows does not try a domain sign-in. - After repair, the operator closes the administrative session and initiates early rotation.
- The ticket retains the PC name, time, operator, reason, and rotation confirmation, but never the password.
The Active Directory password retrieval command is:
Get-LapsADPassword -Identity "PC-042" -AsPlainText
A successful result contains more than the secret. It includes context the operator must verify:
ComputerName : PC-042
DistinguishedName : CN=PC-042,OU=LAPS-Pilot,OU=Workstations,DC=corp,DC=example
Account : Administrator
Password : <password>
PasswordUpdateTime : 28.07.2026 09:10:00
ExpirationTimestamp : 04.08.2026 09:10:00
Source : EncryptedPassword
DecryptionStatus : Success
AuthorizedDecryptor : CORP\GG-LAPS-Readers-Workstations
Source: EncryptedPassword confirms that the encrypted attribute was read, while DecryptionStatus: Success confirms decryption. If an operator can read the object but is not in the encryption principal, those two layers produce a failure. Do not fix it by adding the whole support team to Domain Admins.
The -AsPlainText flag deliberately displays the secret. Run the command on a protected administrative workstation, do not send output to a shared log, and do not paste it into the ticket. A graphical tool does not change the threat model: anyone who can reveal the password can copy it.
Enable access auditing for LAPS attributes on target OUs instead of trying to reconstruct the history only from PowerShell on an operator's workstation. The LAPS module includes Set-LapsADAuditing, which adds audit settings for the password attributes. For example, enable successful access by the designated group as follows:
Set-LapsADAuditing `
-Identity "OU=LAPS-Pilot,OU=Workstations,DC=corp,DC=example" `
-AuditedPrincipals "CORP\GG-LAPS-Readers-Workstations" `
-AuditType Success
An audit record alone does not connect access to a business reason. Match the directory event to the ticket number, time, and personal account. If support retrieves a password through an intermediary service, the AD log sees the service identity rather than the final operator. That service must maintain its own protected retrieval log, or its convenient interface will make investigations weaker.
You can separately delegate permission to change expiration time with Set-LapsADResetPasswordPermission. After the ticket, the operator runs:
Set-LapsADPasswordExpirationTime -Identity "PC-042"
During the next cycle, the client sees an expired timestamp and generates a new password. When administrative access to the PC itself is available, Reset-LapsPassword rotates it immediately. Do not promise immediate rotation through AD when a laptop is off or cannot reach a domain controller. Until the next processing cycle, the old secret remains valid locally.
Verification covers the client, directory, and permissions
Successful GPO application does not prove that the password changed and reached the directory. Verification must cover the client log, the computer object attribute, retrieval by the permitted group, and an expected denial for an unrelated account.
After updating policy, run this on a pilot PC:
Invoke-LapsPolicyProcessing
Then open Applications and Services Logs\Microsoft\Windows\LAPS\Operational. Event 10003 marks the start of a cycle, 10004 a successful finish, and 10005 a failure. Event 10021 prints the effective settings for backup to AD. It is especially useful when an administrator believes one password length was configured but the client received another policy.
When a new password is written successfully to Active Directory, event 10018 appears with the text LAPS successfully updated Active Directory with the new password. Event 10020 follows a successful update of the local account. Those are two actions, and an investigation should distinguish them. Missing 10018 alongside present 10020 points in a different direction than both events being absent.
Event 10031 means another process tried to change the managed account password and LAPS blocked it. Do not close it as harmless noise until you identify the source. It may be an old image-configuration script, a Local Users and Groups GPO, or an operator who has not learned the new procedure.
Test four roles separately: the computer can write its own secret; a reader can see the attribute; the selected principal can decrypt the secret; and the reset group can expire it. Then use an ordinary domain account without delegation and record the denial. A positive test without a negative one often misses an overly broad inherited right.
Collect results across several sites and OS versions. A laptop at headquarters does not test branch replication, and Windows 11 24H2 does not show the behavior of an older supported client. The pilot ends after a complete rotation cycle and a real support operation, not after the first green line appears.
Run another test that teams often omit: retrieve the password, sign in with it, wait for the configured post-authentication action, and try the same secret again. The log should show 10041 when a successful sign-in is detected, 10042 when the grace period ends, and 10044 after successful rotation. Event 10043 means rotation failed and the client will retry. This test covers the full path of a disclosed secret, not only its first write to the directory.
Test behavior while a domain controller is unavailable as well. Disconnect a test machine from the corporate network during an approved window, confirm local sign-in with the current password, restore connectivity, and watch rotation. The support team will learn in advance which steps work at a branch during a link outage and which require network recovery.
Migrating from legacy LAPS requires two inventories
Treat migration from legacy Microsoft LAPS as a change in both management schema and access schema, not as a GPO name update. The legacy product uses the AdmPwd.PS module, its own client extension, and attributes such as ms-Mcs-AdmPwd. Windows LAPS is built into the OS, uses the LAPS module, and writes new msLAPS-* attributes.
The first inventory determines which component manages each device. Find the installed legacy extension, old GPOs, WMI filters, account-creation scripts, and password retrieval tools. Windows LAPS supports a legacy policy emulation mode, but it retains limitations of the old model, including clear-text password storage in AD. Emulation helps with transition; it should not become an invisible permanent state.
The second inventory determines who has access today. Inspect groups that can read the old attributes and extended rights on every OU. Automatically copying all old permissions is dangerous: temporary staff, service accounts, and nested groups used for unrelated work may have accumulated over the years. The new implementation is a chance to define support zones again.
Deploy Windows LAPS in rings. Start with administrative test devices, then a small group of ordinary workstations, one branch, and only then broad production OUs. At every ring, check which policy won, whether the new attribute appeared, whether the intended role can read it, and whether the legacy component stopped changing the same password.
Do not remove legacy infrastructure immediately after the first successful new password. Devices that have been offline for months may return with the old agent and policy. Define completion criteria: every object in the target ring reports a successful Windows LAPS event, the old attribute has not been updated for an agreed period, and support staff can use the new process. Only then retire the old GPO and component in a controlled way.
A LAPS failure should not be fixed with a shared password
The worst emergency response to an incomplete deployment is restoring a shared password through GPO. It quickly gives the help desk its familiar workflow back and reintroduces the original weakness across the fleet. A failure needs a limited recovery path for one device, not a domain-wide rollback of the security model.
If the password is not written, begin with event 10005 and the surrounding records. Verify that BackupDirectory points to AD, the computer object is in the expected OU, SELF permission is inherited, the controller recognizes the new schema, the custom local account name matches, and local password policy accepts the requested complexity. The error code and event 10021 are more informative than another gpupdate.
If the password is stored but support cannot retrieve it, separate reading from decryption. Find-LapsADExtendedRights shows unexpected extended-right holders. Set-LapsADReadPasswordPermission controls reading. ADPasswordEncryptionPrincipal selects who can decrypt a newly stored password. Changing the principal does not re-encrypt the existing secret; the device needs another rotation.
If a computer cannot reach the domain, LAPS cannot place a new password in AD. The old local password may still work even if the directory considers it expired. Keep a working route to a domain controller for remote laptops, or use a Microsoft Entra ID architecture where appropriate. Do not choose an expiration period that offline devices routinely miss without designing recovery.
Image rollback creates a different mismatch: the device restores an older local database state while the directory holds a newer secret. Encrypted history can help if it was enabled beforehand. Newer operating systems add Windows LAPS rollback detection, but it depends on OS version and the Windows Server 2025 schema. Backups and a recovery procedure remain necessary.
For computers and servers that GSE manufactures and integrates into a customer's infrastructure, OU boundaries, the base image, and the support process should be agreed before mass delivery. GSE also integrates Microsoft software and provides nationwide around-the-clock technical support, so the LAPS retrieval model should be part of the operating design rather than a late change to one GPO.
Operations finish the project, not GPO installation
Windows LAPS works well when every permission, policy, and exception has an owner. The directory team owns the schema, OUs, and ACLs. The workplace team owns OS versions, the local account, and policy receipt. The help desk owns ticket-based retrieval and session closure. Security reviews group membership, events, and exceptions.
Review membership in reader, decryption, and reset groups on a fixed schedule. These are distinct powers, even if one small team receives all of them. Pay particular attention to nested groups and direct permissions on individual objects. They survive reorganizations and bypass a clear OU model.
Quality control works best when it focuses on exceptions. Find devices without a recent expiration timestamp, clients repeating 10005 or 10027, objects in a managed OU without attributes, unexpected 10031 events, and computers that have not contacted the directory for too long. Never collect passwords themselves in monitoring. Metadata and policy processing status are enough for reporting.
Set measurable thresholds, but derive them from your operations. The same offline interval for an office desktop and an inspector's seasonal laptop will create false alerts or detect trouble too late. Compare a device with its own class and work schedule. Every exception should name an owner, the last successful rotation, and the next review date.
Directory recovery is part of operations too. Passwords live on computer objects, so AD availability and usable backups directly affect emergency access. Microsoft documents retrieving LAPS and DSRM passwords from a mounted AD database with Get-LapsADPassword recovery parameters. Test that procedure on a copy in a lab while all controllers are healthy, rather than trying it for the first time during a domain outage.
The help desk needs a training environment. An operator must be able to locate the correct object, distinguish local from domain sign-in, interpret DecryptionStatus, finish the task, and confirm rotation. Retrieving a password for the wrong computer does more than delay work: it can expose a valid secret belonging to another device.
Give every exception an end date. A machine running an old Windows version, an isolated laboratory PC, or a vendor system may temporarily lack support for the target policy. It needs a separate OU, a restricted network, its own unique secret, and a plan to remove the exception. A temporary shared password without a date quickly becomes permanent architecture.
The first useful action today is not creating a GPO. Export the computers, OUs, OS versions, extended-right holders, and groups that know the current shared password. That list shows the true size of the transition. After that, a Windows LAPS pilot becomes a controlled replacement for the shared secret rather than another policy adopted by only part of the fleet.
FAQ
Can Windows LAPS be used without Active Directory?
Yes. Windows LAPS can store the password in Microsoft Entra ID for joined devices, with policy delivered through Intune. A fully standalone PC without AD or Entra has no central repository or delegated password retrieval.
Do I need to install a separate Windows LAPS agent?
The feature is built into supported and updated Windows versions. Legacy Microsoft LAPS required a separate agent, so check OS versions first and do not mix components from both generations without a migration plan.
What domain level does Windows LAPS require?
Encrypted password storage in on-premises Active Directory requires a Windows Server 2016 domain functional level or later. At an earlier level, only a clear-text attribute protected by ACLs remains, and that compromise should not become a permanent design.
Does Windows LAPS create the local administrator account?
Not in standard manual mode. You create a custom account beforehand or select the built-in Administrator, while LAPS manages only its password. Automatic account management arrived with Windows 11 24H2 and Windows Server 2025, so a mixed fleet often needs separate policies.
Where does Windows LAPS store the password in a domain?
The password and expiration time are written to attributes on the computer object in Active Directory. With encryption enabled, the client encrypts the password before sending it, and only the group selected by policy can decrypt it.
Can the help desk see passwords for every computer?
It can be configured that way, but it should not be. Delegate reading and decryption by OU and device group so an operator gets passwords only for their support area, while privileged workstations stay with a separate group.
How does an operator retrieve the password for one PC?
After validating the ticket, the operator runs `Get-LapsADPassword -Identity PC-042 -AsPlainText` under an account with the required rights. Record the PC name, reason for access, and outcome in the ticket, then rotate the disclosed password early after the session.
When does Windows LAPS change a password?
The client checks expiration during a background cycle that runs about once an hour and creates a new password after it expires. `Invoke-LapsPolicyProcessing` can process policy immediately, and a separate post-authentication action can be configured after the password is used.
What should I do if event 10018 never appears?
First find cycle start event 10003 and result event 10004 or 10005 in Microsoft-Windows-LAPS/Operational. Then check event 10021, the computer's access to a domain controller, SELF permission on the OU, the target account, and password-policy compatibility.
Does Windows LAPS stop every attack with administrator rights?
No. LAPS removes reuse of one local password and shortens the lifetime of a disclosed secret, but an attacker who already has administrator rights can interfere with protections on that machine. You still need sign-in restrictions, privileged account protection, logging, and device recovery.