Lock-ControlledGpo
Locks controlled GPOs.
Syntax
Lock-ControlledGpo
[[-ControlledGpos] <ControlledGpo[]>]
[-Comment <String>]
[-Domain <String>]
[-DiscardChanges]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
The Lock-ControlledGpo cmdlet locks controlled Group Policy Objects (GPOs). A locked GPO cannot be edited. Locking is the equivalent of checking in a GPO to the Advanced Group Policy Management (AGPM) archive. If you specify the DiscardChanges parameter, the cmdlet reverts any changes made to the GPO. This operation is the same as undoing the checkout of a GPO.
Examples
Example 1: Lock all checked out GPOs
PS C:\>Get-ControlledGpo | Where {$_.VaultState -eq "CHECKED_OUT"} | Lock-ControlledGpo
This command uses the Get-ControlledGpo cmdlet to get all controlled GPOs in the current domain. The command passes those GPOs to the Where-Object cmdlet. That cmdlet passes any GPOs that have a state of CHECKED_OUT to the current cmdlet. This cmdlet locks all of those GPOs.
Example 2: Revert and lock all checked out GPOs
PS C:\>Get-ControlledGpo | Where {$_.VaultState -eq "CHECKED_OUT"} | Lock-ControlledGpo -DiscardChanges -PassThru
Name : TSQA Group policies
ID : {5507363B-6AEB-4EFF-89FD-1567CD1E14E5}
CheckoutID :
BackupID : {70D90CA2-E396-4549-A2C9-18EED518F6F1}
State : CHECKED_IN
ComputerVersion : 2
UserVersion : 2
Deployed : 11/25/2014 9:54:11 AM
Changed : 11/25/2014 9:54:12 AM
ChangedBy : CONTOSO\Admin07
WmiFilterName :
Comment :
This command discards changes and locks all GPOs that are currently checked out. This example is the same as the previous example, except that it specifies the DiscardChanges parameter. It also specifies the PassThru parameter to display the results.
Parameters
-Comment
Specifies a comment for the change that this cmdlet makes.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Prompts you for confirmation before running the cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ControlledGpos
Specifies an array of GPOs to lock. To obtain controlled GPOs, use the Get-ControlledGpo cmdlet.
Type: | ControlledGpo[] |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-DiscardChanges
Indicates that this cmdlet discards any changes that have been made to the controlled GPO. Discarding changes is the same as undoing a check out.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Domain
Specifies the fully qualified domain name (FQDN) of a domain. This cmdlet operates on GPOs in the domain that this parameter specifies. If the AGPM service runs as part of a different domain, and if this cmdlet specifies that domain, a trust relationship must exist between that domain and the domain of the current user or computer.
If you do not specify a domain, this cmdlet uses the domain of the current user.
If you use this cmdlet as part of a computer startup or shutdown script, and if the command does not specify this parameter, the cmdlet uses the domain of the computer.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PassThru
Indicates that this cmdlet returns the controlled GPOs on which the cmdlet operates. If you do not specify this parameter, this cmdlet returns no results.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Inputs
Microsoft.Agpm.ControlledGpo
This cmdlet accepts controlled GPOs that are currently unlocked.
Outputs
Microsoft.Agpm.ControlledGpo
This cmdlet returns controlled GPO objects, if you specify the PassThru parameter.