Compare commits

..

2 Commits

Author SHA1 Message Date
Przemyslaw Klys 65f52058d3 Enhance example scripts with additional functionality
- Added online invocation of Invoke-GPOZaurr for GPOBroken and GPOBrokenLink
- Included return statements for clarity in Example-29 and Example-51
2025-02-23 13:44:07 +01:00
Przemyslaw Klys 170896c0cc Add new ADMX template handling functions and example script 2024-12-02 22:35:29 +01:00
103 changed files with 11372 additions and 10697 deletions
-2
View File
@@ -6,5 +6,3 @@ ReleasesUnpacked/*
*.log *.log
*.html *.html
Artefacts/* Artefacts/*
WebsiteArtifacts/
en-US/
-253
View File
@@ -1,253 +0,0 @@
[CmdletBinding()]
param(
[switch]$SkipBuild,
[string]$ArtifactsRoot = (Join-Path $PSScriptRoot '..\WebsiteArtifacts')
)
$ErrorActionPreference = 'Stop'
$repoRoot = [System.IO.Path]::GetFullPath((Join-Path $PSScriptRoot '..'))
$moduleName = 'GPOZaurr'
$slug = 'gpozaurr'
$toleratedBuildFailure = $false
$docsSource = Join-Path $repoRoot 'Docs'
$helpCandidates = @(
(Join-Path $repoRoot "en-US\$moduleName-help.xml"),
(Join-Path $repoRoot "Artefacts\Unpacked\$moduleName\en-US\$moduleName-help.xml")
)
$examplesSource = Join-Path $repoRoot 'Examples'
$placeholderMarkers = @(
'{{ Fill in the Synopsis }}',
'{{ Fill in the Description }}',
'{{ Add example code here }}',
'{{ Add example description here }}'
)
function Import-LocalPSPublishModule {
$candidateRoots = @()
if ($env:POWERFORGE_ROOT) {
$candidateRoots += $env:POWERFORGE_ROOT
}
$candidateRoots += [System.IO.Path]::GetFullPath((Join-Path $PSScriptRoot '..\..\PSPublishModule'))
foreach ($root in $candidateRoots | Select-Object -Unique) {
if ([string]::IsNullOrWhiteSpace($root)) {
continue
}
$manifestPath = Join-Path $root 'Module\PSPublishModule.psd1'
if (Test-Path -LiteralPath $manifestPath -PathType Leaf) {
Import-Module $manifestPath -Force -ErrorAction Stop
return
}
}
Import-Module PSPublishModule -Force -ErrorAction Stop
}
function Find-HelpFile {
foreach ($candidate in $helpCandidates) {
if (Test-Path -LiteralPath $candidate -PathType Leaf) {
return [System.IO.Path]::GetFullPath($candidate)
}
}
return $null
}
function Test-PlaceholderContent {
param(
[Parameter(Mandatory)]
[string]$Path
)
foreach ($marker in $placeholderMarkers) {
$match = Select-String -Path $Path -Pattern $marker -SimpleMatch -List -ErrorAction SilentlyContinue
if ($match) {
throw "Placeholder API content detected in '$Path' ($marker)."
}
}
}
function Get-PlaceholderMatches {
param(
[Parameter(Mandatory)]
[string]$Path
)
if (-not (Test-Path -LiteralPath $Path)) {
return @()
}
$files = if (Test-Path -LiteralPath $Path -PathType Container) {
Get-ChildItem -LiteralPath $Path -File -Recurse
} else {
Get-Item -LiteralPath $Path
}
foreach ($file in $files) {
foreach ($marker in $placeholderMarkers) {
$match = Select-String -Path $file.FullName -Pattern $marker -SimpleMatch -List -ErrorAction SilentlyContinue
if ($match) {
[PSCustomObject]@{
Path = $file.FullName
Marker = $marker
}
break
}
}
}
}
function Write-CommandMetadata {
param(
[Parameter(Mandatory)]
[string]$ModuleManifestPath,
[Parameter(Mandatory)]
[string]$OutputPath
)
if (-not (Test-Path -LiteralPath $ModuleManifestPath -PathType Leaf)) {
return
}
$resolvedManifestPath = [System.IO.Path]::GetFullPath($ModuleManifestPath)
Remove-Module -Name $moduleName -Force -ErrorAction SilentlyContinue
try {
Import-Module $resolvedManifestPath -Force -ErrorAction Stop | Out-Null
$allCommands = @(Get-Command -Module $moduleName -ErrorAction Stop)
$aliasesByTarget = @{}
foreach ($aliasCommand in $allCommands | Where-Object CommandType -EQ 'Alias') {
$targetName = $aliasCommand.ResolvedCommandName
if ([string]::IsNullOrWhiteSpace($targetName)) {
continue
}
if (-not $aliasesByTarget.ContainsKey($targetName)) {
$aliasesByTarget[$targetName] = [System.Collections.Generic.List[string]]::new()
}
if (-not $aliasesByTarget[$targetName].Contains($aliasCommand.Name)) {
$null = $aliasesByTarget[$targetName].Add($aliasCommand.Name)
}
}
$commandMetadata = foreach ($command in $allCommands | Where-Object CommandType -In @('Function', 'Cmdlet', 'Filter', 'ExternalScript') | Sort-Object Name) {
[ordered]@{
name = $command.Name
kind = if ($command.CommandType -EQ 'Cmdlet') { 'Cmdlet' } else { 'Function' }
aliases = @($aliasesByTarget[$command.Name] | Sort-Object -Unique)
}
}
$payload = [ordered]@{
moduleName = $moduleName
generatedAt = (Get-Date).ToString('o')
commands = @($commandMetadata)
}
$payload | ConvertTo-Json -Depth 6 | Set-Content -LiteralPath $OutputPath -Encoding UTF8
} finally {
Remove-Module -Name $moduleName -Force -ErrorAction SilentlyContinue
}
}
if (-not (Get-Command Invoke-ModuleBuild -ErrorAction SilentlyContinue)) {
Import-LocalPSPublishModule
}
$helpPath = Find-HelpFile
if (-not $helpPath -and -not $SkipBuild) {
$docsPlaceholders = @(Get-PlaceholderMatches -Path $docsSource)
if ($docsPlaceholders.Count -gt 0) {
$sample = ($docsPlaceholders | Select-Object -First 5 | ForEach-Object { "$($_.Path) [$($_.Marker)]" }) -join '; '
Write-Warning "Docs still contain placeholder markdown from a previous generation pass. Continuing with module build so fresh external help can be regenerated. Sample matches: $sample"
}
try {
& (Join-Path $PSScriptRoot 'Manage-Module.ps1') -SkipPublish
} catch {
$helpPath = Find-HelpFile
if (-not $helpPath) {
throw
}
Write-Warning "Manage-Module.ps1 reported a build failure after external help was generated. Continuing website artifact export with the refreshed help output. Original error: $($_.Exception.Message)"
$toleratedBuildFailure = $true
}
$helpPath = Find-HelpFile
}
if (-not $helpPath) {
throw "Unable to find $moduleName external help. Run .\Build\Manage-Module.ps1 first."
}
Test-PlaceholderContent -Path $helpPath
$resolvedArtifactsRoot = [System.IO.Path]::GetFullPath($ArtifactsRoot)
$apiRoot = Join-Path $resolvedArtifactsRoot 'apidocs\powershell'
$examplesTarget = Join-Path $apiRoot 'examples'
if (Test-Path -LiteralPath $apiRoot) {
Remove-Item -LiteralPath $apiRoot -Recurse -Force
}
New-Item -ItemType Directory -Path $apiRoot -Force | Out-Null
Copy-Item -LiteralPath $helpPath -Destination (Join-Path $apiRoot "$moduleName-help.xml") -Force
$psd1Path = Join-Path $repoRoot "$moduleName.psd1"
if (Test-Path -LiteralPath $psd1Path -PathType Leaf) {
Copy-Item -LiteralPath $psd1Path -Destination (Join-Path $apiRoot "$moduleName.psd1") -Force
Write-CommandMetadata -ModuleManifestPath $psd1Path -OutputPath (Join-Path $apiRoot 'command-metadata.json')
}
if (Test-Path -LiteralPath $examplesSource -PathType Container) {
Copy-Item -LiteralPath $examplesSource -Destination $examplesTarget -Recurse -Force
}
$version = $null
if (Test-Path -LiteralPath $psd1Path -PathType Leaf) {
$version = (Import-PowerShellDataFile -Path $psd1Path).ModuleVersion.ToString()
}
$commit = (& git -C $repoRoot rev-parse HEAD).Trim()
$manifest = [ordered]@{
slug = $slug
name = $moduleName
description = 'GPOZaurr helps inspect, report on, and remediate Group Policy environments with PowerShell.'
mode = 'hub-full'
contentMode = 'hybrid'
status = 'active'
listed = $true
version = $version
generatedAt = (Get-Date).ToString('o')
commit = $commit
links = [ordered]@{
source = 'https://github.com/EvotecIT/GPOZaurr'
}
surfaces = [ordered]@{
docs = $true
apiPowerShell = $true
apiDotNet = $false
examples = $true
}
artifacts = [ordered]@{
api = 'WebsiteArtifacts/apidocs'
docs = 'Website/content/project-docs'
examples = 'Website/content/examples'
}
}
$manifestPath = Join-Path $resolvedArtifactsRoot 'project-manifest.json'
New-Item -ItemType Directory -Path $resolvedArtifactsRoot -Force | Out-Null
$manifest | ConvertTo-Json -Depth 6 | Set-Content -LiteralPath $manifestPath -Encoding UTF8
Write-Host "Exported website artifacts -> $resolvedArtifactsRoot" -ForegroundColor Green
if ($toleratedBuildFailure -and $global:LASTEXITCODE -ne 0) {
$global:LASTEXITCODE = 0
}
@@ -1,4 +1,6 @@
Build-Module -ModuleName 'GPOZaurr' { Clear-Host
Invoke-ModuleBuild -ModuleName 'GPOZaurr' {
# Usual defaults as per standard module # Usual defaults as per standard module
$Manifest = @{ $Manifest = @{
# Version number of this module. # Version number of this module.
@@ -25,10 +27,17 @@ Build-Module -ModuleName 'GPOZaurr' {
} }
New-ConfigurationManifest @Manifest New-ConfigurationManifest @Manifest
New-ConfigurationModule -Type RequiredModule -Name 'PSWriteColor', 'PSSharedGoods', 'ADEssentials' -Guid Auto -Version Latest -VersionSource PSGallery New-ConfigurationModule -Type RequiredModule -Name 'PSWriteColor', 'PSSharedGoods', 'ADEssentials', 'PSWriteHTML' -Guid Auto -Version Latest
New-ConfigurationModule -Type RequiredModule -Name "PSWriteHTML" -Guid Auto -Version Latest -VersionSource PSGallery
#New-ConfigurationModule -Type ExternalModule -Name 'Microsoft.PowerShell.Utility', 'Microsoft.PowerShell.Management','Microsoft.PowerShell.Security' #New-ConfigurationModule -Type ExternalModule -Name 'Microsoft.PowerShell.Utility', 'Microsoft.PowerShell.Management','Microsoft.PowerShell.Security'
New-ConfigurationModule -Type ApprovedModule -Name 'PSSharedGoods', 'PSWriteColor', 'Connectimo', 'PSUnifi', 'PSWebToolbox', 'PSMyPassword', 'ADEssentials' New-ConfigurationModule -Type ApprovedModule -Name 'PSSharedGoods', 'PSWriteColor', 'Connectimo', 'PSUnifi', 'PSWebToolbox', 'PSMyPassword', 'ADEssentials'
New-ConfigurationModule -Type ExternalModule -Name @(
"CimCmdlets"
'Microsoft.PowerShell.Management'
'Microsoft.PowerShell.Utility'
'Microsoft.PowerShell.Security'
)
New-ConfigurationModuleSkip -IgnoreModuleName @( New-ConfigurationModuleSkip -IgnoreModuleName @(
# this are builtin into PowerShell, so not critical # this are builtin into PowerShell, so not critical
'powershellget' 'powershellget'
@@ -39,7 +48,6 @@ Build-Module -ModuleName 'GPOZaurr' {
'NetConnection' 'NetConnection'
'NetSecurity' 'NetSecurity'
'NetTCPIP' 'NetTCPIP'
'CimCmdlets'
) -IgnoreFunctionName @( ) -IgnoreFunctionName @(
'Select-Unique' 'Select-Unique'
) )
@@ -199,9 +207,9 @@ Build-Module -ModuleName 'GPOZaurr' {
# when creating PSD1 use special style without comments and with only required parameters # when creating PSD1 use special style without comments and with only required parameters
New-ConfigurationFormat -ApplyTo 'DefaultPSD1', 'OnMergePSD1' -PSD1Style 'Minimal' New-ConfigurationFormat -ApplyTo 'DefaultPSD1', 'OnMergePSD1' -PSD1Style 'Minimal'
# configuration for documentation, at the same time it enables documentation processing # configuration for documentation, at the same time it enables documentation processing
New-ConfigurationDocumentation -Enable:$true -StartClean -UpdateWhenNew -SyncExternalHelpToProjectRoot -PathReadme 'Docs\Readme.md' -Path 'Docs' New-ConfigurationDocumentation -Enable:$false -StartClean -UpdateWhenNew -PathReadme 'Docs\Readme.md' -Path 'Docs'
#New-ConfigurationImportModule -ImportSelf New-ConfigurationImportModule -ImportSelf
New-ConfigurationBuild -Enable:$true -SignModule -MergeModuleOnBuild -MergeFunctionsFromApprovedModules -CertificateThumbprint '483292C9E317AA13B07BB7A96AE9D1A5ED9E7703' New-ConfigurationBuild -Enable:$true -SignModule -MergeModuleOnBuild -MergeFunctionsFromApprovedModules -CertificateThumbprint '483292C9E317AA13B07BB7A96AE9D1A5ED9E7703'
@@ -211,8 +219,6 @@ Build-Module -ModuleName 'GPOZaurr' {
New-ConfigurationArtefact -Type Packed -Enable -Path "$PSScriptRoot\..\Artefacts\Packed" -ArtefactName '<ModuleName>.v<ModuleVersion>.zip' -AddRequiredModules New-ConfigurationArtefact -Type Packed -Enable -Path "$PSScriptRoot\..\Artefacts\Packed" -ArtefactName '<ModuleName>.v<ModuleVersion>.zip' -AddRequiredModules
# options for publishing to github/psgallery # options for publishing to github/psgallery
#New-ConfigurationPublish -Type PowerShellGallery -FilePath 'C:\Support\Important\PowerShellGalleryAPI.txt' -Enabled:$true
#New-ConfigurationPublish -Type PowerShellGallery -FilePath 'C:\Support\Important\PowerShellGalleryAPI.txt' -Enabled:$true -UseAsDependencyVersionSource #New-ConfigurationPublish -Type GitHub -FilePath 'C:\Support\Important\GitHubAPI.txt' -UserName 'EvotecIT' -Enabled:$true
#New-ConfigurationPublish -Type GitHub -FilePath 'C:\Support\Important\GitHubAPI.txt' -UserName 'EvotecIT' -Enabled:$true -GenerateReleaseNotes
} -ExitCode } -ExitCode
-10
View File
@@ -1,15 +1,5 @@
# GPOZaurr Release History # GPOZaurr Release History
## Unreleased
- Fix `WindowsDefender` content detection for newer ADMX categories by supporting both:
- `Windows Components/Windows Defender*`
- `Windows Components/Microsoft Defender Antivirus*`
- Fix `WindowsDefenderExploitGuard` detection for legacy/new category naming variants.
- Add Defender registry fallback parsing (`SOFTWARE\Microsoft\Windows Defender*`) so Defender settings that land in `RegistrySettings` are still surfaced in `WindowsDefender` report output. [#81](https://github.com/EvotecIT/GPOZaurr/issues/81)
## 1.1.9 - 2024.12.02
- Fixes `Invoke-GPOZaurr` when using SplitReports without path [#58](https://github.com/EvotecIT/GPOZaurr/issues/58)
## 1.1.8 - 2024.11.20 ## 1.1.8 - 2024.11.20
### What's new ### What's new
- Added `RestrictedGroups` to GroupAnalysis - Added `RestrictedGroups` to GroupAnalysis
+92 -9
View File
@@ -1,16 +1,20 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Add-GPOPermission # Add-GPOPermission
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
```powershell
Add-GPOPermission ```
Add-GPOPermission [[-Type] <String>] [[-IncludePermissionType] <GPPermissionType>] [[-Principal] <String>]
[[-PrincipalType] <String>] [[-PermitType] <String>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -18,25 +22,104 @@ Add-GPOPermission
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
Add-GPOPermission PS C:\> {{ Add example code here }}
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -IncludePermissionType
{{ Fill IncludePermissionType Description }}
```yaml
Type: GPPermissionType
Parameter Sets: (All)
Aliases:
Accepted values: None, GpoApply, GpoRead, GpoEdit, GpoEditDeleteModifySecurity, GpoCustom, WmiFilterEdit, WmiFilterFullControl, WmiFilterCustom, StarterGpoRead, StarterGpoEdit, StarterGpoFullControl, StarterGpoCustom, SomCreateWmiFilter, SomWmiFilterFullControl, SomCreateGpo, SomCreateStarterGpo, SomLogging, SomPlanning, SomLink
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -PermitType
{{ Fill PermitType Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Accepted values: Allow, Deny
Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Principal
{{ Fill Principal Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases: Trustee
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -PrincipalType
{{ Fill PrincipalType Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases: TrusteeType
Accepted values: DistinguishedName, Name, Sid
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Type
{{ Fill Type Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Accepted values: WellKnownAdministrative, Administrative, AuthenticatedUsers, Default
Required: False
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters ### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+315 -9
View File
@@ -1,16 +1,47 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Add-GPOZaurrPermission # Add-GPOZaurrPermission
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
```powershell
Add-GPOZaurrPermission ### GPOName (Default)
```
Add-GPOZaurrPermission -GPOName <String> [-Type <String>] [-Principal <String>] [-PrincipalType <String>]
-PermissionType <GPPermissionType> [-Inheritable] [-PermitType <String>] [-Forest <String>]
[-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>]
[-ADAdministrativeGroups <IDictionary>] [-LimitProcessing <Int32>] [-WhatIf] [-Confirm] [<CommonParameters>]
```
### GPOGUID
```
Add-GPOZaurrPermission -GPOGuid <String> [-Type <String>] [-Principal <String>] [-PrincipalType <String>]
-PermissionType <GPPermissionType> [-Inheritable] [-PermitType <String>] [-Forest <String>]
[-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>]
[-ADAdministrativeGroups <IDictionary>] [-LimitProcessing <Int32>] [-WhatIf] [-Confirm] [<CommonParameters>]
```
### All
```
Add-GPOZaurrPermission [-All] [-Type <String>] [-Principal <String>] [-PrincipalType <String>]
-PermissionType <GPPermissionType> [-Inheritable] [-PermitType <String>] [-Forest <String>]
[-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>]
[-ADAdministrativeGroups <IDictionary>] [-LimitProcessing <Int32>] [-WhatIf] [-Confirm] [<CommonParameters>]
```
### ADObject
```
Add-GPOZaurrPermission -ADObject <ADObject[]> [-Type <String>] [-Principal <String>] [-PrincipalType <String>]
-PermissionType <GPPermissionType> [-Inheritable] [-PermitType <String>] [-Forest <String>]
[-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>]
[-ADAdministrativeGroups <IDictionary>] [-LimitProcessing <Int32>] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -18,25 +49,300 @@ Add-GPOZaurrPermission
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
Add-GPOZaurrPermission PS C:\> {{ Add example code here }}
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -ADAdministrativeGroups
{{ Fill ADAdministrativeGroups Description }}
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ADObject
{{ Fill ADObject Description }}
```yaml
Type: ADObject[]
Parameter Sets: ADObject
Aliases: OrganizationalUnit, DistinguishedName
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -All
{{ Fill All Description }}
```yaml
Type: SwitchParameter
Parameter Sets: All
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains
{{ Fill ExcludeDomains Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }}
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Forest
{{ Fill Forest Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases: ForestName
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -GPOGuid
{{ Fill GPOGuid Description }}
```yaml
Type: String
Parameter Sets: GPOGUID
Aliases: GUID, GPOID
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -GPOName
{{ Fill GPOName Description }}
```yaml
Type: String
Parameter Sets: GPOName
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludeDomains
{{ Fill IncludeDomains Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Domain, Domains
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Inheritable
{{ Fill Inheritable Description }}
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -LimitProcessing
{{ Fill LimitProcessing Description }}
```yaml
Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -PermissionType
{{ Fill PermissionType Description }}
```yaml
Type: GPPermissionType
Parameter Sets: (All)
Aliases: IncludePermissionType
Accepted values: None, GpoApply, GpoRead, GpoEdit, GpoEditDeleteModifySecurity, GpoCustom, WmiFilterEdit, WmiFilterFullControl, WmiFilterCustom, StarterGpoRead, StarterGpoEdit, StarterGpoFullControl, StarterGpoCustom, SomCreateWmiFilter, SomWmiFilterFullControl, SomCreateGpo, SomCreateStarterGpo, SomLogging, SomPlanning, SomLink
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -PermitType
{{ Fill PermitType Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Accepted values: Allow, Deny, All
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Principal
{{ Fill Principal Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases: Trustee
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -PrincipalType
{{ Fill PrincipalType Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases: TrusteeType
Accepted values: DistinguishedName, Name, Sid
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Type
{{ Fill Type Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Accepted values: WellKnownAdministrative, Administrative, AuthenticatedUsers, Default
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters ### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+112 -86
View File
@@ -1,17 +1,21 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Backup-GPOZaurr # Backup-GPOZaurr
## SYNOPSIS ## SYNOPSIS
Provides Backup functionality to Group Policies Provides Backup functionality to Group Policies
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Backup-GPOZaurr [[-LimitProcessing] <int>] [[-Type] <string[]>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-BackupPath] <string>] [-BackupDated] [-WhatIf] [-Confirm] [<CommonParameters>] Backup-GPOZaurr [[-LimitProcessing] <Int32>] [[-Type] <String[]>] [[-Forest] <String>]
[[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>]
[[-BackupPath] <String>] [-BackupDated] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -20,83 +24,50 @@ Provides Backup functionality to Group Policies
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell ```
PS > $GPOSummary = Backup-GPOZaurr -BackupPath "$Env:UserProfile\Desktop\GPO" -Verbose -Type All $GPOSummary = Backup-GPOZaurr -BackupPath "$Env:UserProfile\Desktop\GPO" -Verbose -Type All
$GPOSummary | Format-Table # only if you want to display output of backup
``` ```
$GPOSummary | Format-Table # only if you want to display output of backup
### EXAMPLE 2 ### EXAMPLE 2
```powershell ```
PS > $GPOSummary = Backup-GPOZaurr -BackupPath "$Env:UserProfile\Desktop\GPO" -Verbose -Type All -BackupDated $GPOSummary = Backup-GPOZaurr -BackupPath "$Env:UserProfile\Desktop\GPO" -Verbose -Type All -BackupDated
$GPOSummary | Format-Table # only if you want to display output of backup
``` ```
$GPOSummary | Format-Table # only if you want to display output of backup
## PARAMETERS ## PARAMETERS
### -BackupDated ### -LimitProcessing
Whether cmdlet should created Dated folders for executed backup or not. Keep in mind it's not nessecary and two backups made to same folder have their dates properly tagged Limits amount of GPOs that are backed up
```yaml ```yaml
Type: SwitchParameter Type: Int32
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: 1
Default value: False Default value: 0
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -BackupPath ### -Type
Path where to keep the backup Provides a way to backup only Empty or Unlinked GPOs.
The default is All.
```yaml
Type: String
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 6
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 3 Position: 2
Default value: None Default value: All
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### -Forest ### -Forest
@@ -104,15 +75,29 @@ Target different Forest, by default current forest is used
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 2 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
@@ -120,47 +105,91 @@ Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 4 Position: 5
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -LimitProcessing ### -ExtendedForestInformation
Limits amount of GPOs that are backed up Ability to provide Forest Information from another command to speed up processing
```yaml ```yaml
Type: Int32 Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 0 Position: 6
Default value: 0 Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Type ### -BackupPath
Provides a way to backup only Empty or Unlinked GPOs. The default is All. Path where to keep the backup
```yaml ```yaml
Type: String[] Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: Empty, Unlinked, Disabled, All
Required: False Required: False
Position: 1 Position: 7
Default value: All Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -BackupDated
Whether cmdlet should created Dated folders for executed backup or not.
Keep in mind it's not nessecary and two backups made to same folder have their dates properly tagged
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -168,12 +197,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+75 -55
View File
@@ -1,166 +1,187 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Clear-GPOZaurrSysvolDFSR # Clear-GPOZaurrSysvolDFSR
## SYNOPSIS ## SYNOPSIS
Clears the ConflictAndDeleted folder in DFSR for specified GPOs. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Clear-GPOZaurrSysvolDFSR [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-ExcludeDomainControllers] <string[]>] [[-IncludeDomains] <string[]>] [[-IncludeDomainControllers] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-LimitProcessing] <int>] [-SkipRODC] [-WhatIf] [-Confirm] [<CommonParameters>] Clear-GPOZaurrSysvolDFSR [[-Forest] <String>] [[-ExcludeDomains] <String[]>]
[[-ExcludeDomainControllers] <String[]>] [[-IncludeDomains] <String[]>]
[[-IncludeDomainControllers] <String[]>] [-SkipRODC] [[-ExtendedForestInformation] <IDictionary>]
[[-LimitProcessing] <Int32>] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function clears the ConflictAndDeleted folder in DFSR for specified Group Policy Objects (GPOs) within a given forest. It allows excluding specific domains and domain controllers if needed. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Clear-GPOZaurrSysvolDFSR -Forest "contoso.com" -IncludeDomains "child.contoso.com" -ExcludeDomainControllers "dc1.contoso.com" -SkipRODC PS C:\> {{ Add example code here }}
Clears the ConflictAndDeleted folder in DFSR for GPOs in the "contoso.com" forest, including only the "child.contoso.com" domain and excluding the "dc1.contoso.com" domain controller.
```
### EXAMPLE 2
```powershell
PS > Clear-GPOZaurrSysvolDFSR -Forest "contoso.com" -IncludeDomains "child.contoso.com" -LimitProcessing 5
Clears the ConflictAndDeleted folder in DFSR for GPOs in the "contoso.com" forest, including only the "child.contoso.com" domain, and processes a maximum of 5 GPOs.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomainControllers ### -ExcludeDomainControllers
Specifies an array of domain controllers to exclude from the cleanup process. {{ Fill ExcludeDomainControllers Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domains to exclude from the cleanup process. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional forest information if needed. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 5 Position: 5
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest name where the GPOs are located. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomainControllers ### -IncludeDomainControllers
Specifies an array of domain controllers to include in the cleanup process. {{ Fill IncludeDomainControllers Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: DomainControllers Aliases: DomainControllers
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domains to include in the cleanup process. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -LimitProcessing ### -LimitProcessing
Specifies the maximum number of GPOs to process. {{ Fill LimitProcessing Description }}
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 6 Position: 6
Default value: 2147483647 Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -SkipRODC ### -SkipRODC
Indicates whether Read-Only Domain Controllers (RODCs) should be skipped during cleanup. {{ Fill SkipRODC Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -168,12 +189,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+22 -30
View File
@@ -1,70 +1,63 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# ConvertFrom-CSExtension # ConvertFrom-CSExtension
## SYNOPSIS ## SYNOPSIS
Converts Client-side Extension (CSE) GUIDs to their corresponding names. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
ConvertFrom-CSExtension [[-CSE] <string[]>] [-Limited] [<CommonParameters>] ConvertFrom-CSExtension [[-CSE] <String[]>] [-Limited] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function takes an array of CSE GUIDs and returns their corresponding names. It can be used to easily identify the purpose of each CSE GUID. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > ConvertFrom-CSExtension -CSE '{35378EAC-683F-11D2-A89A-00C04FBBCFA2}', '{0F6B957E-509E-11D1-A7CC-0000F87571E3}' -Limited PS C:\> {{ Add example code here }}
Converts the specified CSE GUIDs to their corresponding names, limited to a predefined set.
```
### EXAMPLE 2
```powershell
PS > ConvertFrom-CSExtension -CSE '{D02B1F73-3407-48AE-BA88-E8213C6761F1}', '{0ACDD40C-75AC-47ab-BAA0-BF6DE7E7FE63}'
Converts the specified CSE GUIDs to their corresponding names without any limitations.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -CSE ### -CSE
Specifies an array of Client-side Extension (CSE) GUIDs to be converted to names. {{ Fill CSE Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Limited ### -Limited
Indicates whether the conversion should be limited to a predefined set of CSE GUIDs. {{ Fill Limited Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -72,12 +65,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+22 -25
View File
@@ -1,63 +1,63 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Export-GPOZaurrContent # Export-GPOZaurrContent
## SYNOPSIS ## SYNOPSIS
Exports Group Policy Objects (GPOs) to XML or HTML files. Saves GPOs to XML or HTML files.
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Export-GPOZaurrContent [-FolderOutput] <string> [[-ReportType] <string>] [<CommonParameters>] Export-GPOZaurrContent [-FolderOutput] <String> [[-ReportType] <String>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function exports GPOs to either XML or HTML files based on the specified parameters. Saves GPOs to XML or HTML files.
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell
PS > Export-GPOZaurrContent -FolderOutput "C:\ExportedGPOs" -ReportType HTML
Exports all GPOs to HTML format and saves them in the "C:\ExportedGPOs" folder.
``` ```
An example
```
## PARAMETERS ## PARAMETERS
### -FolderOutput ### -FolderOutput
Specifies the folder path where the exported GPO files will be saved. The folder where the GPOs will be saved.
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Path Aliases: Path
Possible values:
Required: True Required: True
Position: 0 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ReportType ### -ReportType
Specifies the type of report to generate. Valid values are XML or HTML. The default value is XML. The type of report to generate.
Valid values are XML or HTML.
Default is XML.
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: XML, HTML
Required: False Required: False
Position: 1 Position: 2
Default value: XML Default value: XML
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -65,12 +65,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+32 -40
View File
@@ -1,70 +1,63 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Find-CSExtension # Find-CSExtension
## SYNOPSIS ## SYNOPSIS
This function retrieves Group Policy Client Side Extensions (CSEs) from a specified Windows computer. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Find-CSExtension [[-CSE] <string[]>] [[-ComputerName] <string>] [<CommonParameters>] Find-CSExtension [[-CSE] <String[]>] [[-ComputerName] <String>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
The Find-CSExtension function lists Group Policy Client Side Extensions (CSEs) configured on a Windows computer. It queries the Windows Registry to retrieve information about the CSEs. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Find-CSExtension -ComputerName "Computer01" PS C:\> {{ Add example code here }}
Retrieves all CSEs configured on the computer named "Computer01".
```
### EXAMPLE 2
```powershell
PS > Find-CSExtension -CSE "CSE1", "CSE2" -ComputerName "Computer02"
Retrieves information about CSEs named "CSE1" and "CSE2" on the computer named "Computer02".
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -ComputerName
Specifies the name of the computer from which to retrieve the CSE information.
```yaml
Type: String
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -CSE ### -CSE
Specifies an array of CSE names to filter the results. If not provided, all CSEs will be listed. {{ Fill CSE Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ComputerName
{{ Fill ComputerName Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -72,12 +65,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+140 -147
View File
@@ -1,147 +1,73 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurr # Get-GPOZaurr
## SYNOPSIS ## SYNOPSIS
Gets information about all Group Policies. Similar to what Get-GPO provides by default. Gets information about all Group Policies.
Similar to what Get-GPO provides by default.
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurr [[-ExcludeGroupPolicies] <scriptblock>] [[-GPOName] <string>] [[-GPOGuid] <string>] [[-Type] <string[]>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-GPOPath] <string[]>] [[-ADAdministrativeGroups] <IDictionary>] [-PermissionsOnly] [-OwnerOnly] [-Limited] [<CommonParameters>] Get-GPOZaurr [[-ExcludeGroupPolicies] <ScriptBlock>] [[-GPOName] <String>] [[-GPOGuid] <String>]
[[-Type] <String[]>] [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>]
[[-ExtendedForestInformation] <IDictionary>] [[-GPOPath] <String[]>] [-PermissionsOnly] [-OwnerOnly]
[-Limited] [[-ADAdministrativeGroups] <IDictionary>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
Gets information about all Group Policies. Similar to what Get-GPO provides by default. Gets information about all Group Policies.
Similar to what Get-GPO provides by default.
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell ```
PS > $GPOs = Get-GPOZaurr $GPOs = Get-GPOZaurr
$GPOs | Format-Table DisplayName, Owner, OwnerSID, OwnerType
``` ```
$GPOs | Format-Table DisplayName, Owner, OwnerSID, OwnerType
### EXAMPLE 2 ### EXAMPLE 2
```powershell ```
PS > $GPO = Get-GPOZaurr -GPOName 'ALL | Allow use of biometrics' $GPO = Get-GPOZaurr -GPOName 'ALL | Allow use of biometrics'
$GPO | Format-List *
``` ```
$GPO | Format-List *
### EXAMPLE 3 ### EXAMPLE 3
```powershell ```
PS > $GPOS = Get-GPOZaurr -ExcludeGroupPolicies { $GPOS = Get-GPOZaurr -ExcludeGroupPolicies {
Skip-GroupPolicy -Name 'de14_usr_std' ```
Skip-GroupPolicy -Name 'de14_usr_std'
Skip-GroupPolicy -Name 'de14_usr_std' -DomaiName 'ad.evotec.xyz' Skip-GroupPolicy -Name 'de14_usr_std' -DomaiName 'ad.evotec.xyz'
Skip-GroupPolicy -Name 'All | Trusted Websites' #-DomaiName 'ad.evotec.xyz' Skip-GroupPolicy -Name 'All | Trusted Websites' #-DomaiName 'ad.evotec.xyz'
'{D39BF08A-87BF-4662-BFA0-E56240EBD5A2}' '{D39BF08A-87BF-4662-BFA0-E56240EBD5A2}'
'COMPUTERS | Enable Sets' 'COMPUTERS | Enable Sets'
} }
$GPOS | Format-Table -AutoSize * $GPOS | Format-Table -AutoSize *
```
## PARAMETERS ## PARAMETERS
### -ADAdministrativeGroups
Ability to provide ADAdministrativeGroups from different function to speed up processing
```yaml
Type: IDictionary
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 9
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExcludeGroupPolicies ### -ExcludeGroupPolicies
Marks the GPO as excluded from the list. Marks the GPO as excluded from the list.
```yaml ```yaml
Type: ScriptBlock Type: ScriptBlock
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 0 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 7
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: __AllParameterSets
Aliases: ForestName
Possible values:
Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -GPOGuid
Provide a GPOGuid to get information about a specific GPO.
```yaml
Type: String
Parameter Sets: __AllParameterSets
Aliases: GUID, GPOID
Possible values:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### -GPOName ### -GPOName
@@ -149,31 +75,76 @@ Provide a GPOName to get information about a specific GPO.
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -GPOPath ### -GPOGuid
Define GPOPath where the XML files are located to be analyzed instead of asking Active Directory Provide a GPOGuid to get information about a specific GPO.
```yaml
Type: String
Parameter Sets: (All)
Aliases: GUID, GPOID
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Type
Choose a specific type of GPO.
Options are: 'Empty', 'Unlinked', 'Disabled', 'NoApplyPermission', 'All'.
Default is All.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 8 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: (All)
Aliases: ForestName
Required: False
Position: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 6
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
@@ -181,47 +152,44 @@ Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 6 Position: 7
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Limited ### -ExtendedForestInformation
Provide limited output without analyzing XML data Ability to provide Forest Information from another command to speed up processing
```yaml ```yaml
Type: SwitchParameter Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: 8
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -OwnerOnly ### -GPOPath
only show owner information, by default all information is shown Define GPOPath where the XML files are located to be analyzed instead of asking Active Directory
```yaml ```yaml
Type: SwitchParameter Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: 9
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -PermissionsOnly ### -PermissionsOnly
@@ -229,31 +197,59 @@ Only show permissions, by default all information is shown
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Type ### -OwnerOnly
Choose a specific type of GPO. Options are: 'Empty', 'Unlinked', 'Disabled', 'NoApplyPermission', 'All'. Default is All. only show owner information, by default all information is shown
```yaml ```yaml
Type: String[] Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: Empty, Unlinked, Disabled, NoApplyPermission, All
Required: False Required: False
Position: 3 Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```
### -Limited
Provide limited output without analyzing XML data
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```
### -ADAdministrativeGroups
Ability to provide ADAdministrativeGroups from different function to speed up processing
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: 10
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -261,12 +257,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+65 -82
View File
@@ -1,218 +1,202 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrAD # Get-GPOZaurrAD
## SYNOPSIS ## SYNOPSIS
Retrieves Group Policy Objects (GPOs) information from Active Directory. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### Default (Default) ### Default (Default)
```powershell ```
Get-GPOZaurrAD [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-DateFrom <datetime>] [-DateTo <datetime>] [-DateRange <string>] [-DateProperty <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>] Get-GPOZaurrAD [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-DateFrom <DateTime>] [-DateTo <DateTime>] [-DateRange <String>] [-DateProperty <String[]>]
[-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
``` ```
### GPOName ### GPOName
```powershell ```
Get-GPOZaurrAD [-GPOName <string>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-DateFrom <datetime>] [-DateTo <datetime>] [-DateRange <string>] [-DateProperty <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>] Get-GPOZaurrAD [-GPOName <String>] [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-DateFrom <DateTime>] [-DateTo <DateTime>] [-DateRange <String>] [-DateProperty <String[]>]
[-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
``` ```
### GPOGUID ### GPOGUID
```powershell ```
Get-GPOZaurrAD [-GPOGuid <string>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-DateFrom <datetime>] [-DateTo <datetime>] [-DateRange <string>] [-DateProperty <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>] Get-GPOZaurrAD [-GPOGuid <String>] [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-DateFrom <DateTime>] [-DateTo <DateTime>] [-DateRange <String>] [-DateProperty <String[]>]
[-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function retrieves information about Group Policy Objects (GPOs) from Active Directory based on specified criteria such as GPO name, GPO GUID, date range, and forest details. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Get-GPOZaurrAD -GPOName "ExampleGPO" PS C:\> {{ Add example code here }}
``` ```
Description: {{ Add example description here }}
Retrieves information about a GPO with the name "ExampleGPO".
### EXAMPLE 2
```powershell
PS > Get-GPOZaurrAD -GPOGuid "{12345678-1234-1234-1234-123456789012}"
```
Description:
Retrieves information about a GPO with the specified GUID.
### EXAMPLE 3
```powershell
PS > Get-GPOZaurrAD -Forest "example.com" -IncludeDomains "domain1", "domain2" -DateRange "Last30Days"
```
Description:
Retrieves GPO information from the forest "example.com" for domains "domain1" and "domain2" created or modified in the last 30 days.
## PARAMETERS ## PARAMETERS
### -DateFrom ### -DateFrom
Specifies the start date for filtering GPOs based on creation or modification date. {{ Fill DateFrom Description }}
```yaml ```yaml
Type: DateTime Type: DateTime
Parameter Sets: Default, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -DateProperty ### -DateProperty
Specifies the property (WhenCreated or WhenChanged) to use for filtering GPOs based on date. {{ Fill DateProperty Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Default, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Aliases:
Possible values: WhenCreated, WhenChanged Accepted values: WhenCreated, WhenChanged
Required: False Required: False
Position: named Position: Named
Default value: WhenCreated Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -DateRange ### -DateRange
Specifies a predefined date range for filtering GPOs based on creation or modification date. {{ Fill DateRange Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: Default, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Aliases:
Possible values: PastHour, CurrentHour, PastDay, CurrentDay, PastMonth, CurrentMonth, PastQuarter, CurrentQuarter, Last14Days, Last21Days, Last30Days, Last7Days, Last3Days, Last1Days Accepted values: PastHour, CurrentHour, PastDay, CurrentDay, PastMonth, CurrentMonth, PastQuarter, CurrentQuarter, Last14Days, Last21Days, Last30Days, Last7Days, Last3Days, Last1Days
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -DateTo ### -DateTo
Specifies the end date for filtering GPOs based on creation or modification date. {{ Fill DateTo Description }}
```yaml ```yaml
Type: DateTime Type: DateTime
Parameter Sets: Default, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domains to exclude from the search. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Default, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional forest information to include in the output. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: Default, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest name to search for GPOs. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: Default, GPOName, GPOGUID Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -GPOGuid ### -GPOGuid
Specifies the GUID of the GPO to retrieve. {{ Fill GPOGuid Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: GPOGUID Parameter Sets: GPOGUID
Aliases: GUID, GPOID Aliases: GUID, GPOID
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -GPOName ### -GPOName
Specifies the name of the GPO to retrieve. {{ Fill GPOName Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: GPOName Parameter Sets: GPOName
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domains to include in the search. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Default, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -220,12 +204,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+17 -26
View File
@@ -1,56 +1,48 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrBackupInformation # Get-GPOZaurrBackupInformation
## SYNOPSIS ## SYNOPSIS
Retrieves backup information from GPOZaurr manifest files. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrBackupInformation [[-BackupFolder] <string[]>] [<CommonParameters>] Get-GPOZaurrBackupInformation [[-BackupFolder] <String[]>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function retrieves backup information from GPOZaurr manifest files located in the specified BackupFolder(s). {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Get-GPOZaurrBackupInformation -BackupFolder "C:\Backups" PS C:\> {{ Add example code here }}
``` ```
Description: {{ Add example description here }}
Retrieves backup information from GPOZaurr manifest files located in the "C:\Backups" folder.
### EXAMPLE 2
```powershell
PS > Get-GPOZaurrBackupInformation -BackupFolder "C:\Backups", "D:\Archives"
```
Description:
Retrieves backup information from GPOZaurr manifest files located in both "C:\Backups" and "D:\Archives" folders.
## PARAMETERS ## PARAMETERS
### -BackupFolder ### -BackupFolder
Specifies the path(s) to the folder containing GPOZaurr manifest files. {{ Fill BackupFolder Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -58,12 +50,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+71 -76
View File
@@ -1,17 +1,21 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrBroken # Get-GPOZaurrBroken
## SYNOPSIS ## SYNOPSIS
Detects broken or otherwise damaged Group Policies Detects broken or otherwise damaged Group Policies
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrBroken [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-ExcludeDomainControllers] <string[]>] [[-IncludeDomains] <string[]>] [[-IncludeDomainControllers] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-SkipRODC] [-VerifyDomainControllers] [<CommonParameters>] Get-GPOZaurrBroken [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-ExcludeDomainControllers] <String[]>]
[[-IncludeDomains] <String[]>] [[-IncludeDomainControllers] <String[]>] [-SkipRODC]
[[-ExtendedForestInformation] <IDictionary>] [-VerifyDomainControllers] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -26,27 +30,25 @@ It provides few statuses:
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell
PS > Get-GPOZaurrBroken -Verbose | Format-Table
``` ```
Get-GPOZaurrBroken -Verbose | Format-Table
```
## PARAMETERS ## PARAMETERS
### -ExcludeDomainControllers ### -Forest
Exclude specific domain controllers, by default there are no exclusions, as long as VerifyDomainControllers switch is enabled. Otherwise this parameter is ignored. Target different Forest, by default current forest is used
```yaml ```yaml
Type: String[] Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases: ForestName
Possible values:
Required: False Required: False
Position: 2 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -ExcludeDomains
@@ -54,63 +56,30 @@ Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExcludeDomainControllers
Ability to provide Forest Information from another command to speed up processing Exclude specific domain controllers, by default there are no exclusions, as long as VerifyDomainControllers switch is enabled.
Otherwise this parameter is ignored.
```yaml
Type: IDictionary
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: __AllParameterSets
Aliases: ForestName
Possible values:
Required: False
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -IncludeDomainControllers
Include only specific domain controllers, by default all domain controllers are included, as long as VerifyDomainControllers switch is enabled. Otherwise this parameter is ignored.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: DomainControllers Aliases:
Possible values:
Required: False Required: False
Position: 4 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
@@ -118,31 +87,61 @@ Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 3 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -IncludeDomainControllers
Include only specific domain controllers, by default all domain controllers are included, as long as VerifyDomainControllers switch is enabled.
Otherwise this parameter is ignored.
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: DomainControllers
Required: False
Position: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -SkipRODC ### -SkipRODC
Skip Read-Only Domain Controllers. By default all domain controllers are included. Skip Read-Only Domain Controllers.
By default all domain controllers are included.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: 6
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -VerifyDomainControllers ### -VerifyDomainControllers
@@ -150,15 +149,14 @@ Forces cmdlet to check GPO Existance on Domain Controllers rather then per domai
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -166,12 +164,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+49 -55
View File
@@ -1,17 +1,20 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrBrokenLink # Get-GPOZaurrBrokenLink
## SYNOPSIS ## SYNOPSIS
Finds any GPO link that doesn't have a matching GPO (already removed GPO). Finds any GPO link that doesn't have a matching GPO (already removed GPO).
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrBrokenLink [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>] Get-GPOZaurrBrokenLink [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>]
[[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -20,65 +23,45 @@ Finds any GPO link that doesn't have a matching GPO (already removed GPO).
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell
PS > Get-GPOZaurrBrokenLink -Verbose | Format-Table -AutoSize *
``` ```
Get-GPOZaurrBrokenLink -Verbose | Format-Table -AutoSize *
```
### EXAMPLE 2 ### EXAMPLE 2
```powershell
PS > Get-GPOZaurrBrokenLink -Verbose -IncludeDomains ad.evotec.pl | Format-Table -AutoSize *
``` ```
Get-GPOZaurrBrokenLink -Verbose -IncludeDomains ad.evotec.pl | Format-Table -AutoSize *
```
## PARAMETERS ## PARAMETERS
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Forest ### -Forest
Target different Forest, by default current forest is used Target different Forest, by default current forest is used
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 0 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
@@ -86,15 +69,29 @@ Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 2 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -102,12 +99,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+18 -25
View File
@@ -1,54 +1,48 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrDictionary # Get-GPOZaurrDictionary
## SYNOPSIS ## SYNOPSIS
Retrieves a dictionary of Group Policy Objects (GPOs) with their associated types and paths. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrDictionary [[-Splitter] <string>] [<CommonParameters>] Get-GPOZaurrDictionary [[-Splitter] <String>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function retrieves a dictionary of Group Policy Objects (GPOs) along with their associated types and paths. It iterates through the GPOs stored in the $Script:GPODitionary variable and constructs a custom object for each GPO containing its name, types, and path. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Get-GPOZaurrDictionary PS C:\> {{ Add example code here }}
Retrieves the dictionary of GPOs with their types and paths using the default newline delimiter.
```
### EXAMPLE 2
```powershell
PS > Get-GPOZaurrDictionary -Splitter ","
Retrieves the dictionary of GPOs with their types and paths using a comma as the delimiter.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -Splitter ### -Splitter
Specifies the delimiter used to separate multiple types or paths. Default value is [System.Environment]::NewLine. {{ Fill Splitter Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: [System.Environment]::NewLine Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -56,12 +50,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+27 -31
View File
@@ -1,97 +1,94 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrDuplicateObject # Get-GPOZaurrDuplicateObject
## SYNOPSIS ## SYNOPSIS
Retrieves duplicate Group Policy Objects (GPOs) within a specified forest. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrDuplicateObject [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>] Get-GPOZaurrDuplicateObject [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>]
[[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function retrieves duplicate Group Policy Objects (GPOs) within a specified forest by comparing GPOs based on partial distinguished name matching. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Get-GPOZaurrDuplicateObject -Forest "contoso.com" -IncludeDomains "child1.contoso.com", "child2.contoso.com" -ExcludeDomains "child3.contoso.com" -ExtendedForestInformation $additionalInfo PS C:\> {{ Add example code here }}
``` ```
Description {{ Add example description here }}
-----------
Retrieves duplicate GPOs within the "contoso.com" forest, including domains "child1.contoso.com" and "child2.contoso.com" while excluding "child3.contoso.com". Additional forest information is provided for the search.
## PARAMETERS ## PARAMETERS
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domain names to exclude from the search for duplicate GPOs. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional information about the forest to aid in the search for duplicate GPOs. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the name of the forest to search for duplicate GPOs. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domain names to include in the search for duplicate GPOs. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -99,12 +96,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+57 -69
View File
@@ -1,198 +1,187 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrFiles # Get-GPOZaurrFiles
## SYNOPSIS ## SYNOPSIS
Retrieves information about Group Policy Objects (GPOs) stored in SYSVOL and NETLOGON folders. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrFiles [[-Type] <string[]>] [[-HashAlgorithm] <string>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-Signature] [-AsHashTable] [-Extended] [-ExtendedMetaData] [<CommonParameters>] Get-GPOZaurrFiles [[-Type] <String[]>] [[-HashAlgorithm] <String>] [-Signature] [-AsHashTable] [-Extended]
[-ExtendedMetaData] [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>]
[[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function retrieves information about GPOs stored in SYSVOL and NETLOGON folders of specified domains. It can filter by type of files and hash algorithms used for verification. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Get-GPOZaurrFiles -Type 'All' -HashAlgorithm 'SHA256' -Signature PS C:\> {{ Add example code here }}
Retrieves all files from SYSVOL and NETLOGON folders with SHA256 hash algorithm and includes file signatures.
```
### EXAMPLE 2
```powershell
PS > Get-GPOZaurrFiles -Type 'Sysvol' -HashAlgorithm 'MD5' -AsHashTable
Retrieves only SYSVOL files with MD5 hash algorithm and returns the results as a hashtable.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -AsHashTable ### -AsHashTable
Indicates whether to return the results as a hashtable. {{ Fill AsHashTable Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domains to exclude from the search. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Extended ### -Extended
Indicates whether to include extended information about the forest. {{ Fill Extended Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional forest information to include. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 5 Position: 5
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedMetaData ### -ExtendedMetaData
Indicates whether to include extended metadata information. {{ Fill ExtendedMetaData Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest name to retrieve GPO information from. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -HashAlgorithm ### -HashAlgorithm
Specifies the hash algorithm to use for file verification. Valid values are 'None', 'MACTripleDES', 'MD5', 'RIPEMD160', 'SHA1', 'SHA256', 'SHA384', 'SHA512'. {{ Fill HashAlgorithm Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: None, MACTripleDES, MD5, RIPEMD160, SHA1, SHA256, SHA384, SHA512 Accepted values: None, MACTripleDES, MD5, RIPEMD160, SHA1, SHA256, SHA384, SHA512
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domains to include in the search. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Signature ### -Signature
Indicates whether to include file signatures for verification. {{ Fill Signature Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Type ### -Type
Specifies the type of files to retrieve. Valid values are 'All', 'Netlogon', and 'Sysvol'. {{ Fill Type Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: All, Netlogon, Sysvol Accepted values: All, Netlogon, Sysvol
Required: False Required: False
Position: 0 Position: 0
Default value: All Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -200,12 +189,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+32 -35
View File
@@ -1,111 +1,109 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrFilesPolicyDefinition # Get-GPOZaurrFilesPolicyDefinition
## SYNOPSIS ## SYNOPSIS
Retrieves policy definitions for Group Policy Objects (GPOs) within specified domains. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrFilesPolicyDefinition [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-Signature] [<CommonParameters>] Get-GPOZaurrFilesPolicyDefinition [[-Forest] <String>] [[-ExcludeDomains] <String[]>]
[[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>] [-Signature] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function retrieves policy definitions for GPOs within specified domains. It collects information about policy files, including their attributes and digital signatures. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Get-GPOZaurrFilesPolicyDefinition -Forest "contoso.com" -IncludeDomains "domain1", "domain2" -ExcludeDomains "domain3" -Signature PS C:\> {{ Add example code here }}
Retrieves policy definitions for GPOs within the "contoso.com" forest, including domains "domain1" and "domain2" while excluding "domain3". Digital signature information is also retrieved.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domains to exclude from the search. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional forest information to include in the output. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest name to retrieve GPO policy definitions from. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domains to include in the search. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Signature ### -Signature
Indicates whether to retrieve digital signature information for policy files. {{ Fill Signature Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -113,12 +111,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+43 -52
View File
@@ -1,150 +1,142 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrFolders # Get-GPOZaurrFolders
## SYNOPSIS ## SYNOPSIS
Retrieves information about GPO folders within specified domains. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrFolders [[-Type] <string[]>] [[-FolderType] <string>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-AsHashTable] [<CommonParameters>] Get-GPOZaurrFolders [[-Type] <String[]>] [[-FolderType] <String>] [[-Forest] <String>]
[[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>]
[-AsHashTable] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function retrieves information about various GPO folders within specified domains, such as PolicyDefinitions, Policies, Scripts, GPO Starters, NETLOGON Scripts, DfsrPrivate, and SYSVOL Root. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Get-GPOZaurrFolders -Type All -FolderType All -Forest 'example.com' -IncludeDomains 'domain1', 'domain2' -ExcludeDomains 'domain3' -ExtendedForestInformation $info -AsHashTable PS C:\> {{ Add example code here }}
Retrieves information about all types of GPO folders within the specified domains in the forest 'example.com', excluding 'domain3', and including 'domain1' and 'domain2', with extended forest information.
```
### EXAMPLE 2
```powershell
PS > Get-GPOZaurrFolders -Type Sysvol -FolderType NTFRS -Forest 'example.com' -IncludeDomains 'domain1' -AsHashTable
Retrieves information about Sysvol folders using NTFRS type within the specified domain 'domain1' in the forest 'example.com' and returns the output as a hashtable.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -AsHashTable ### -AsHashTable
Indicates whether to return the output as a hashtable. {{ Fill AsHashTable Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -ExcludeDomains
Specifies domains to exclude from the retrieval. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional information about the forest. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 5 Position: 5
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -FolderType ### -FolderType
Specifies the type of folders to retrieve. Valid values are 'All', 'NTFRS', 'Empty'. {{ Fill FolderType Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: All, NTFRS, Empty Accepted values: All, NTFRS, Empty
Required: False Required: False
Position: 1 Position: 1
Default value: All Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest name to retrieve information for. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies domains to include in the retrieval. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Type ### -Type
Specifies the type of folders to retrieve. Valid values are 'All', 'Netlogon', 'Sysvol'. {{ Fill Type Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: All, Netlogon, Sysvol Accepted values: All, Netlogon, Sysvol
Required: False Required: False
Position: 0 Position: 0
Default value: All Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -152,12 +144,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+102 -106
View File
@@ -1,175 +1,174 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrInheritance # Get-GPOZaurrInheritance
## SYNOPSIS ## SYNOPSIS
Retrieves inheritance information for Group Policy Objects (GPOs) within specified Organizational Units (OUs). Short description
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrInheritance [[-Exclusions] <string[]>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-IncludeBlockedObjects] [-OnlyBlockedInheritance] [-IncludeExcludedObjects] [-IncludeGroupPoliciesForBlockedObjects] [<CommonParameters>] Get-GPOZaurrInheritance [-IncludeBlockedObjects] [-OnlyBlockedInheritance] [-IncludeExcludedObjects]
[-IncludeGroupPoliciesForBlockedObjects] [[-Exclusions] <String[]>] [[-Forest] <String>]
[[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function retrieves and displays inheritance information for GPOs within specified OUs. It provides details on blocked inheritance, excluded objects, and group policies associated with blocked objects. Long description
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell ```
PS > $Objects = Get-GPOZaurrInheritance -IncludeBlockedObjects -IncludeExcludedObjects -OnlyBlockedInheritance -Exclusions $ExcludedOU $Objects = Get-GPOZaurrInheritance -IncludeBlockedObjects -IncludeExcludedObjects -OnlyBlockedInheritance -Exclusions $ExcludedOU
$Objects | Format-Table
``` ```
$Objects | Format-Table
## PARAMETERS ## PARAMETERS
### -ExcludeDomains ### -IncludeBlockedObjects
Specifies the domain to exclude from the search. By default, the entire forest is scanned. Include OU's with blocked inheritance.
Default disabled
```yaml ```yaml
Type: String[] Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 2 Position: Named
Default value: None Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -OnlyBlockedInheritance
Show only OU's with blocked inheritance
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludeExcludedObjects
Show excluded objets.
Default disabled
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludeGroupPoliciesForBlockedObjects
{{ Fill IncludeGroupPoliciesForBlockedObjects Description }}
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -Exclusions ### -Exclusions
Specifies the OUs approved by IT to be excluded. You can provide OUs by canonical name or distinguishedName. Provide exclusions for OU's approved by IT.
You can provide OU by canonical name or distinguishedName
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExtendedForestInformation
Allows providing Forest Information from another command to speed up processing.
```yaml
Type: IDictionary
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Forest
Specifies the target forest. By default, the current forest is used.
```yaml
Type: String
Parameter Sets: __AllParameterSets
Aliases: ForestName
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeBlockedObjects ### -Forest
Specifies whether to include OUs with blocked inheritance. By default, this is disabled. Target different Forest, by default current forest is used
```yaml ```yaml
Type: SwitchParameter Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases: ForestName
Possible values:
Required: False Required: False
Position: named Position: 2
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -ExcludeDomains
Specifies specific domains to include. By default, the entire forest is scanned. Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases:
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeExcludedObjects ### -IncludeDomains
Specifies whether to show excluded objects. By default, this is disabled. Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: SwitchParameter Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: named Position: 4
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeGroupPoliciesForBlockedObjects ### -ExtendedForestInformation
Specifies whether to include Group Policies for blocked objects. By default, this is disabled. Ability to provide Forest Information from another command to speed up processing
```yaml ```yaml
Type: SwitchParameter Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: 5
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -OnlyBlockedInheritance
Specifies whether to show only OUs with blocked inheritance.
```yaml
Type: SwitchParameter
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -177,12 +176,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+27 -29
View File
@@ -1,95 +1,94 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrLegacyFiles # Get-GPOZaurrLegacyFiles
## SYNOPSIS ## SYNOPSIS
Retrieves legacy Group Policy Object (GPO) files from the SYSVOL directory of specified domains within a forest. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrLegacyFiles [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>] Get-GPOZaurrLegacyFiles [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>]
[[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
The Get-GPOZaurrLegacyFiles function retrieves legacy GPO files, such as '*.adm' and 'admfiles.ini', from the SYSVOL directory of specified domains within a forest. It provides detailed information about these files including their name, full path, creation time, last write time, attributes, associated domain name, and directory name. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Get-GPOZaurrLegacyFiles -Forest "contoso.com" -IncludeDomains "domain1", "domain2" -ExcludeDomains "domain3" -ExtendedForestInformation $additionalInfo PS C:\> {{ Add example code here }}
``` ```
Retrieves legacy GPO files from the "contoso.com" forest for "domain1" and "domain2" domains while excluding "domain3", using additional forest information. {{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domain names to exclude from the search for legacy GPO files. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional information about the forest to enhance the retrieval process. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the name of the forest from which to retrieve legacy GPO files. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domain names to include in the search for legacy GPO files. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -97,12 +96,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+85 -98
View File
@@ -1,73 +1,73 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrLink # Get-GPOZaurrLink
## SYNOPSIS ## SYNOPSIS
Retrieves Group Policy Object (GPO) links based on specified criteria. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### Linked (Default) ### Linked (Default)
```powershell ```
Get-GPOZaurrLink [-Linked <string[]>] [-Limited] [-SkipDuplicates] [-GPOCache <IDictionary>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-AsHashTable] [-Summary] [<CommonParameters>] Get-GPOZaurrLink [-Linked <String[]>] [-Limited] [-SkipDuplicates] [-GPOCache <IDictionary>] [-Forest <String>]
[-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>]
[-AsHashTable] [-Summary] [<CommonParameters>]
``` ```
### ADObject ### ADObject
```powershell ```
Get-GPOZaurrLink -ADObject <ADObject[]> [-Limited] [-SkipDuplicates] [-GPOCache <IDictionary>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-AsHashTable] [-Summary] [<CommonParameters>] Get-GPOZaurrLink -ADObject <ADObject[]> [-Limited] [-SkipDuplicates] [-GPOCache <IDictionary>]
[-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-ExtendedForestInformation <IDictionary>] [-AsHashTable] [-Summary] [<CommonParameters>]
``` ```
### Filter ### Filter
```powershell ```
Get-GPOZaurrLink [-Filter <string>] [-SearchBase <string>] [-SearchScope <ADSearchScope>] [-Limited] [-SkipDuplicates] [-GPOCache <IDictionary>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-AsHashTable] [-Summary] [<CommonParameters>] Get-GPOZaurrLink [-Filter <String>] [-SearchBase <String>] [-SearchScope <ADSearchScope>] [-Limited]
[-SkipDuplicates] [-GPOCache <IDictionary>] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-AsHashTable] [-Summary]
[<CommonParameters>]
``` ```
### Site ### Site
```powershell ```
Get-GPOZaurrLink [-Site <string[]>] [-GPOCache <IDictionary>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-AsHashTable] [-Summary] [<CommonParameters>] Get-GPOZaurrLink [-Site <String[]>] [-GPOCache <IDictionary>] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-AsHashTable] [-Summary]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function retrieves GPO links based on various parameters such as ADObject, Filter, Linked, Site, etc. It provides flexibility in searching for GPO links within Active Directory. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Get-GPOZaurrLink -ADObject $ADObject -Linked 'All' PS C:\> {{ Add example code here }}
``` ```
Description {{ Add example description here }}
-----------
Retrieves all linked GPOZaurr links for the specified Active Directory object(s).
### EXAMPLE 2
```powershell
PS > Get-GPOZaurrLink -Filter "(objectClass -eq 'organizationalUnit')" -SearchBase 'CN=Configuration,DC=ad,DC=evotec,DC=xyz'
```
Description
-----------
Retrieves GPOZaurr links based on the specified filter and search base.
## PARAMETERS ## PARAMETERS
### -ADObject ### -ADObject
Specifies the Active Directory object(s) to search for GPO links. {{ Fill ADObject Description }}
```yaml ```yaml
Type: ADObject[] Type: ADObject[]
Parameter Sets: ADObject Parameter Sets: ADObject
Aliases: Aliases:
Possible values:
Required: True Required: True
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: True (ByValue, ByPropertyName) Accept pipeline input: True (ByPropertyName, ByValue)
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -AsHashTable ### -AsHashTable
@@ -75,31 +75,29 @@ Accept wildcard characters: True
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Linked, ADObject, Filter, Site Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -ExcludeDomains
Specifies the domains to exclude from the search. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Linked, ADObject, Filter, Site Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
@@ -107,175 +105,166 @@ Accept wildcard characters: True
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: Linked, ADObject, Filter, Site Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Filter ### -Filter
Specifies the filter criteria to search for GPO links. {{ Fill Filter Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: Filter Parameter Sets: Filter
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest name for filtering GPO links. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: Linked, ADObject, Filter, Site Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -GPOCache ### -GPOCache
Specifies a cache for storing GPO information. {{ Fill GPOCache Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: Linked, ADObject, Filter, Site Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies the domains to include in the search. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Linked, ADObject, Filter, Site Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Limited ### -Limited
Indicates whether to limit the search results. {{ Fill Limited Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Linked, ADObject, Filter Parameter Sets: Linked, ADObject, Filter
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Linked ### -Linked
Specifies the type of linked GPOs to retrieve. Valid values are 'All', 'Root', 'DomainControllers', 'Site', and 'OrganizationalUnit'. {{ Fill Linked Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Linked Parameter Sets: Linked
Aliases: Aliases:
Possible values: All, Root, DomainControllers, Site, OrganizationalUnit Accepted values: All, Root, DomainControllers, Site, OrganizationalUnit
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -SearchBase ### -SearchBase
Specifies the search base for filtering GPO links. {{ Fill SearchBase Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: Filter Parameter Sets: Filter
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -SearchScope ### -SearchScope
Specifies the search scope for filtering GPO links. {{ Fill SearchScope Description }}
```yaml ```yaml
Type: ADSearchScope Type: ADSearchScope
Parameter Sets: Filter Parameter Sets: Filter
Aliases: Aliases:
Possible values: Base, OneLevel, Subtree Accepted values: Base, OneLevel, Subtree
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Site ### -Site
Specifies the site(s) to search for GPO links. {{ Fill Site Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Site Parameter Sets: Site
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -SkipDuplicates ### -SkipDuplicates
Indicates whether to skip duplicate search results. {{ Fill SkipDuplicates Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Linked, ADObject, Filter Parameter Sets: Linked, ADObject, Filter
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Summary ### -Summary
@@ -283,15 +272,14 @@ Accept wildcard characters: True
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Linked, ADObject, Filter, Site Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -299,12 +287,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `ADObject[]` ### Microsoft.ActiveDirectory.Management.ADObject[]
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+38 -47
View File
@@ -1,134 +1,126 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrLinkSummary # Get-GPOZaurrLinkSummary
## SYNOPSIS ## SYNOPSIS
Retrieves a summary of GPO links based on specified criteria. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrLinkSummary [[-Report] <string[]>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-UnlimitedProperties] [<CommonParameters>] Get-GPOZaurrLinkSummary [[-Report] <String[]>] [-UnlimitedProperties] [[-Forest] <String>]
[[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function retrieves a summary of GPO links based on the provided parameters. It categorizes the links into different types and provides detailed information about each link. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Get-GPOZaurrLinkSummary -Forest "Contoso" -IncludeDomains "Domain1", "Domain2" -Report "MultipleLinks" PS C:\> {{ Add example code here }}
Retrieves a summary of GPO links for the specified forest and included domains, focusing on multiple links.
```
### EXAMPLE 2
```powershell
PS > Get-GPOZaurrLinkSummary -Forest "Fabrikam" -ExcludeDomains "Domain3" -Report "OneLink"
Retrieves a summary of GPO links for the specified forest excluding Domain3, focusing on a single link.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domains to exclude from the report. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional information about the forest. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest name to retrieve GPO links from. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domains to include in the report. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Report ### -Report
Specifies the type of report to generate. Valid values are 'All', 'MultipleLinks', 'OneLink', and 'LinksSummary'. Default is 'All'. {{ Fill Report Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: All, MultipleLinks, OneLink, LinksSummary Accepted values: All, MultipleLinks, OneLink, LinksSummary
Required: False Required: False
Position: 0 Position: 0
Default value: All Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -UnlimitedProperties ### -UnlimitedProperties
Indicates whether to include unlimited properties in the report. {{ Fill UnlimitedProperties Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -136,12 +128,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
-163
View File
@@ -1,163 +0,0 @@
---
external help file: GPOZaurr-help.xml
Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0
---
# Get-GPOZaurrMissingFiles
## SYNOPSIS
Retrieves information about missing files in Group Policy Objects (GPOs) within a specified forest.
## SYNTAX
### __AllParameterSets
```powershell
Get-GPOZaurrMissingFiles [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-GPOName] <string[]>] [[-GPOGUID] <string[]>] [-BrokenOnly] [<CommonParameters>]
```
## DESCRIPTION
This function queries Active Directory for GPOs and checks for missing files within them. It provides detailed information about any errors found.
## EXAMPLES
### EXAMPLE 1
```powershell
PS > Get-GPOZaurrMissingFiles -Forest "example.com" -IncludeDomains "domain1", "domain2" -ExcludeDomains "domain3" -GPOName "GPO1"
```
Retrieves information about missing files in the GPO named "GPO1" within the "example.com" forest, including only domains "domain1" and "domain2" while excluding "domain3".
### EXAMPLE 2
```powershell
PS > Get-GPOZaurrMissingFiles -Forest "example.com" -IncludeDomains "domain1", "domain2" -GPOGUID "12345678-1234-1234-1234-1234567890AB" -BrokenOnly
```
Retrieves information about GPOs with missing files in the "example.com" forest, including only domains "domain1" and "domain2" for the GPO with the specified GUID, displaying only GPOs with missing files.
## PARAMETERS
### -BrokenOnly
Indicates whether to only display GPOs with missing files.
```yaml
Type: SwitchParameter
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExcludeDomains
Specifies an array of domains to exclude from the query.
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExtendedForestInformation
Specifies additional information about the forest.
```yaml
Type: IDictionary
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Forest
Specifies the name of the forest to query for GPO information.
```yaml
Type: String
Parameter Sets: __AllParameterSets
Aliases: ForestName
Possible values:
Required: False
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -GPOGUID
Specifies the GUID of the GPO to retrieve information for.
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -GPOName
Specifies the name of the GPO to retrieve information for.
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases: Name
Possible values:
Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -IncludeDomains
Specifies an array of domains to include in the query.
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases: Domain, Domains
Possible values:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
- `None`
## OUTPUTS
- `None`
## RELATED LINKS
- None
+45 -60
View File
@@ -1,151 +1,137 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrNetLogon # Get-GPOZaurrNetLogon
## SYNOPSIS ## SYNOPSIS
Retrieves information about Group Policy Objects (GPO) stored in the Netlogon and SYSVOL directories. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### Default (Default) ### Default (Default)
```powershell ```
Get-GPOZaurrNetLogon [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>] Get-GPOZaurrNetLogon [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
``` ```
### OwnerOnly ### OwnerOnly
```powershell ```
Get-GPOZaurrNetLogon [-OwnerOnly] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>] Get-GPOZaurrNetLogon [-OwnerOnly] [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
``` ```
### SkipOwner ### SkipOwner
```powershell ```
Get-GPOZaurrNetLogon [-SkipOwner] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>] Get-GPOZaurrNetLogon [-SkipOwner] [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
The Get-GPOZaurrNetLogon function retrieves details about GPOs stored in the Netlogon and SYSVOL directories of specified domains within a forest. It provides information about file ownership, status, domain, extension, creation time, and more. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Get-GPOZaurrNetLogon -Forest "contoso.com" -IncludeDomains "domain1", "domain2" PS C:\> {{ Add example code here }}
Retrieves GPO information for the specified forest and domains.
```
### EXAMPLE 2
```powershell
PS > Get-GPOZaurrNetLogon -OwnerOnly
Retrieves GPO information only for GPOs with identified owners.
```
### EXAMPLE 3
```powershell
PS > Get-GPOZaurrNetLogon -SkipOwner
Retrieves GPO information while skipping the owner check.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domains to exclude from GPO retrieval. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Default, OwnerOnly, SkipOwner Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional forest information to include in the output. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: Default, OwnerOnly, SkipOwner Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest name to retrieve GPO information from. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: Default, OwnerOnly, SkipOwner Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domains to include in GPO retrieval. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Default, OwnerOnly, SkipOwner Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -OwnerOnly ### -OwnerOnly
Specifies whether to include only GPOs with identified owners. {{ Fill OwnerOnly Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: OwnerOnly Parameter Sets: OwnerOnly
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -SkipOwner ### -SkipOwner
Specifies whether to skip checking the owner of GPOs. {{ Fill SkipOwner Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: SkipOwner Parameter Sets: SkipOwner
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -153,12 +139,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+35 -37
View File
@@ -1,127 +1,126 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrOrganizationalUnit # Get-GPOZaurrOrganizationalUnit
## SYNOPSIS ## SYNOPSIS
Retrieves information about Group Policy Objects (GPOs) linked to Organizational Units (OUs) within a specified forest. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrOrganizationalUnit [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-Option] <string[]>] [[-ExcludeOrganizationalUnit] <string[]>] [<CommonParameters>] Get-GPOZaurrOrganizationalUnit [[-Forest] <String>] [[-ExcludeDomains] <String[]>]
[[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>] [[-Option] <String[]>]
[[-ExcludeOrganizationalUnit] <String[]>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function retrieves detailed information about the GPOs linked to OUs within a specified forest. It provides information on linked GPOs, objects within OUs, and counts of objects at different levels. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Get-GPOZaurrOrganizationalUnit -Forest "contoso.com" -IncludeDomains "child.contoso.com" -ExcludeDomains "test.contoso.com" -ExtendedForestInformation $ExtendedInfo -Option "OK" -ExcludeOrganizationalUnit "OU=Test,DC=contoso,DC=com" PS C:\> {{ Add example code here }}
Retrieves information about GPOs linked to OUs in the "contoso.com" forest, including the "child.contoso.com" domain, excluding the "test.contoso.com" domain, with additional forest information, performing the 'OK' action, and excluding the "OU=Test,DC=contoso,DC=com" OU.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domains to exclude from processing. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludeOrganizationalUnit ### -ExcludeOrganizationalUnit
Specifies an array of OUs to exclude from processing. {{ Fill ExcludeOrganizationalUnit Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ExcludeOU, Exclusions Aliases: ExcludeOU, Exclusions
Possible values:
Required: False Required: False
Position: 5 Position: 5
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional information about the forest. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the name of the forest to retrieve information from. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domains to include for processing. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Option ### -Option
Specifies the action to perform on the retrieved data. Valid values are 'OK', 'Unlink', or 'Delete'. {{ Fill Option Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: OK, Unlink, Delete Accepted values: OK, Unlink, Delete
Required: False Required: False
Position: 4 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -129,12 +128,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+130 -134
View File
@@ -1,27 +1,36 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrOwner # Get-GPOZaurrOwner
## SYNOPSIS ## SYNOPSIS
Gets owners of GPOs from Active Directory and SYSVOL Gets owners of GPOs from Active Directory and SYSVOL
## SYNTAX ## SYNTAX
### Default (Default) ### Default (Default)
```powershell ```
Get-GPOZaurrOwner [-IncludeSysvol] [-SkipBroken] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-ADAdministrativeGroups <IDictionary>] [-ApprovedOwner <string[]>] [<CommonParameters>] Get-GPOZaurrOwner [-IncludeSysvol] [-SkipBroken] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>]
[-ADAdministrativeGroups <IDictionary>] [-ApprovedOwner <String[]>] [<CommonParameters>]
``` ```
### GPOName ### GPOName
```powershell ```
Get-GPOZaurrOwner [-GPOName <string>] [-IncludeSysvol] [-SkipBroken] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-ADAdministrativeGroups <IDictionary>] [-ApprovedOwner <string[]>] [<CommonParameters>] Get-GPOZaurrOwner [-GPOName <String>] [-IncludeSysvol] [-SkipBroken] [-Forest <String>]
[-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>]
[-ADAdministrativeGroups <IDictionary>] [-ApprovedOwner <String[]>] [<CommonParameters>]
``` ```
### GPOGUID ### GPOGUID
```powershell ```
Get-GPOZaurrOwner [-GPOGuid <string>] [-IncludeSysvol] [-SkipBroken] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-ADAdministrativeGroups <IDictionary>] [-ApprovedOwner <string[]>] [<CommonParameters>] Get-GPOZaurrOwner [-GPOGuid <String>] [-IncludeSysvol] [-SkipBroken] [-Forest <String>]
[-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>]
[-ADAdministrativeGroups <IDictionary>] [-ApprovedOwner <String[]>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -30,145 +39,47 @@ Gets owners of GPOs from Active Directory and SYSVOL
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell
PS > Get-GPOZaurrOwner -Verbose -IncludeSysvol
``` ```
Get-GPOZaurrOwner -Verbose -IncludeSysvol
```
### EXAMPLE 2 ### EXAMPLE 2
```powershell
PS > Get-GPOZaurrOwner -Verbose -IncludeSysvol -SkipBroken
``` ```
Get-GPOZaurrOwner -Verbose -IncludeSysvol -SkipBroken
```
## PARAMETERS ## PARAMETERS
### -ADAdministrativeGroups
Ability to provide AD Administrative Groups from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: Default, GPOName, GPOGUID
Aliases:
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ApprovedOwner
Ability to provide different owner (non administrative that still is approved for use)
```yaml
Type: String[]
Parameter Sets: Default, GPOName, GPOGUID
Aliases: Exclusion, Exclusions
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: Default, GPOName, GPOGUID
Aliases:
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: Default, GPOName, GPOGUID
Aliases:
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: Default, GPOName, GPOGUID
Aliases: ForestName
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -GPOGuid
GUID of GPO. By default all GPOs are returned
```yaml
Type: String
Parameter Sets: GPOGUID
Aliases: GUID, GPOID
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -GPOName ### -GPOName
Name of GPO. By default all GPOs are returned Name of GPO.
By default all GPOs are returned
```yaml ```yaml
Type: String Type: String
Parameter Sets: GPOName Parameter Sets: GPOName
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -GPOGuid
Include only specific domains, by default whole forest is scanned GUID of GPO.
By default all GPOs are returned
```yaml ```yaml
Type: String[] Type: String
Parameter Sets: Default, GPOName, GPOGUID Parameter Sets: GPOGUID
Aliases: Domain, Domains Aliases: GUID, GPOID
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeSysvol ### -IncludeSysvol
@@ -176,15 +87,14 @@ Includes Owner from SYSVOL as well
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Default, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -SkipBroken ### -SkipBroken
@@ -192,15 +102,104 @@ Doesn't display GPOs that have no SYSVOL content (orphaned GPOs)
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Default, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: (All)
Aliases: ForestName
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludeDomains
Include only specific domains, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Domain, Domains
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ADAdministrativeGroups
Ability to provide AD Administrative Groups from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ApprovedOwner
Ability to provide different owner (non administrative that still is approved for use)
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Exclusion, Exclusions
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -208,12 +207,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+54 -61
View File
@@ -1,17 +1,20 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrPassword # Get-GPOZaurrPassword
## SYNOPSIS ## SYNOPSIS
Tries to find CPassword in Group Policies or given path and translate it to readable value Tries to find CPassword in Group Policies or given path and translate it to readable value
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrPassword [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-GPOPath] <string[]>] [<CommonParameters>] Get-GPOZaurrPassword [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>]
[[-ExtendedForestInformation] <IDictionary>] [[-GPOPath] <String[]>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -20,81 +23,45 @@ Tries to find CPassword in Group Policies or given path and translate it to read
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell
PS > Get-GPOZaurrPassword -GPOPath 'C:\Users\przemyslaw.klys\Desktop\GPOExport_2020.10.12'
``` ```
Get-GPOZaurrPassword -GPOPath 'C:\Users\przemyslaw.klys\Desktop\GPOExport_2020.10.12'
```
### EXAMPLE 2 ### EXAMPLE 2
```powershell
PS > Get-GPOZaurrPassword
``` ```
Get-GPOZaurrPassword
```
## PARAMETERS ## PARAMETERS
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Forest ### -Forest
Target different Forest, by default current forest is used Target different Forest, by default current forest is used
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 0 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -GPOPath ### -ExcludeDomains
Path where Group Policy content is located or where backup is located Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 4 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
@@ -102,15 +69,44 @@ Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 2 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -GPOPath
Path where Group Policy content is located or where backup is located
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -118,12 +114,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+359 -9
View File
@@ -1,16 +1,45 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrPermission # Get-GPOZaurrPermission
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
```powershell
Get-GPOZaurrPermission ### GPO (Default)
```
Get-GPOZaurrPermission [-Principal <String[]>] [-PrincipalType <String>] [-Type <String[]>] [-SkipWellKnown]
[-SkipAdministrative] [-IncludeOwner] [-IncludePermissionType <GPPermissionType[]>]
[-ExcludePermissionType <GPPermissionType[]>] [-PermitType <String>] [-ExcludePrincipal <String[]>]
[-ExcludePrincipalType <String>] [-IncludeGPOObject] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>]
[-ADAdministrativeGroups <IDictionary>] [-ReturnSecurityWhenNoData] [-ReturnSingleObject] [<CommonParameters>]
```
### GPOName
```
Get-GPOZaurrPermission [-GPOName <String>] [-Principal <String[]>] [-PrincipalType <String>] [-Type <String[]>]
[-SkipWellKnown] [-SkipAdministrative] [-IncludeOwner] [-IncludePermissionType <GPPermissionType[]>]
[-ExcludePermissionType <GPPermissionType[]>] [-PermitType <String>] [-ExcludePrincipal <String[]>]
[-ExcludePrincipalType <String>] [-IncludeGPOObject] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>]
[-ADAdministrativeGroups <IDictionary>] [-ReturnSecurityWhenNoData] [-ReturnSingleObject] [<CommonParameters>]
```
### GPOGUID
```
Get-GPOZaurrPermission [-GPOGuid <String>] [-Principal <String[]>] [-PrincipalType <String>] [-Type <String[]>]
[-SkipWellKnown] [-SkipAdministrative] [-IncludeOwner] [-IncludePermissionType <GPPermissionType[]>]
[-ExcludePermissionType <GPPermissionType[]>] [-PermitType <String>] [-ExcludePrincipal <String[]>]
[-ExcludePrincipalType <String>] [-IncludeGPOObject] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>]
[-ADAdministrativeGroups <IDictionary>] [-ReturnSecurityWhenNoData] [-ReturnSingleObject] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -18,25 +47,346 @@ Get-GPOZaurrPermission
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
Get-GPOZaurrPermission PS C:\> {{ Add example code here }}
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -ADAdministrativeGroups
{{ Fill ADAdministrativeGroups Description }}
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains
{{ Fill ExcludeDomains Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludePermissionType
{{ Fill ExcludePermissionType Description }}
```yaml
Type: GPPermissionType[]
Parameter Sets: (All)
Aliases:
Accepted values: None, GpoApply, GpoRead, GpoEdit, GpoEditDeleteModifySecurity, GpoCustom, WmiFilterEdit, WmiFilterFullControl, WmiFilterCustom, StarterGpoRead, StarterGpoEdit, StarterGpoFullControl, StarterGpoCustom, SomCreateWmiFilter, SomWmiFilterFullControl, SomCreateGpo, SomCreateStarterGpo, SomLogging, SomPlanning, SomLink
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludePrincipal
{{ Fill ExcludePrincipal Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludePrincipalType
{{ Fill ExcludePrincipalType Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Accepted values: DistinguishedName, Name, Sid
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }}
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Forest
{{ Fill Forest Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases: ForestName
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -GPOGuid
{{ Fill GPOGuid Description }}
```yaml
Type: String
Parameter Sets: GPOGUID
Aliases: GUID, GPOID
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -GPOName
{{ Fill GPOName Description }}
```yaml
Type: String
Parameter Sets: GPOName
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludeDomains
{{ Fill IncludeDomains Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Domain, Domains
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludeGPOObject
{{ Fill IncludeGPOObject Description }}
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludeOwner
{{ Fill IncludeOwner Description }}
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludePermissionType
{{ Fill IncludePermissionType Description }}
```yaml
Type: GPPermissionType[]
Parameter Sets: (All)
Aliases:
Accepted values: None, GpoApply, GpoRead, GpoEdit, GpoEditDeleteModifySecurity, GpoCustom, WmiFilterEdit, WmiFilterFullControl, WmiFilterCustom, StarterGpoRead, StarterGpoEdit, StarterGpoFullControl, StarterGpoCustom, SomCreateWmiFilter, SomWmiFilterFullControl, SomCreateGpo, SomCreateStarterGpo, SomLogging, SomPlanning, SomLink
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -PermitType
{{ Fill PermitType Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Accepted values: Allow, Deny, All
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Principal
{{ Fill Principal Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -PrincipalType
{{ Fill PrincipalType Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Accepted values: DistinguishedName, Name, NetbiosName, Sid
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ReturnSecurityWhenNoData
{{ Fill ReturnSecurityWhenNoData Description }}
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ReturnSingleObject
{{ Fill ReturnSingleObject Description }}
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -SkipAdministrative
{{ Fill SkipAdministrative Description }}
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -SkipWellKnown
{{ Fill SkipWellKnown Description }}
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Type
{{ Fill Type Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Accepted values: AuthenticatedUsers, DomainComputers, Unknown, WellKnownAdministrative, NotWellKnown, NotWellKnownAdministrative, NotAdministrative, Administrative, All
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters ### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+27 -29
View File
@@ -1,95 +1,94 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrPermissionAnalysis # Get-GPOZaurrPermissionAnalysis
## SYNOPSIS ## SYNOPSIS
Analyzes permissions for Group Policy Objects (GPOs) and administrative groups. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrPermissionAnalysis [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-Permissions] <array>] [<CommonParameters>] Get-GPOZaurrPermissionAnalysis [[-Forest] <String>] [[-ExcludeDomains] <String[]>]
[[-IncludeDomains] <String[]>] [[-Permissions] <Array>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function analyzes permissions for Group Policy Objects (GPOs) and identifies administrative groups with specific permissions. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Get-GPOZaurrPermissionAnalysis -Forest "ContosoForest" -IncludeDomains @("Domain1", "Domain2") -ExcludeDomains @("Domain3") -Permissions $PermissionsArray PS C:\> {{ Add example code here }}
Analyzes permissions for GPOs in the "ContosoForest" forest, including "Domain1" and "Domain2" while excluding "Domain3", using the specified permissions array.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domains to exclude from the analysis. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the name of the forest to analyze. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domains to include in the analysis. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Permissions ### -Permissions
Specifies an array of permissions to analyze. {{ Fill Permissions Description }}
```yaml ```yaml
Type: Array Type: Array
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -97,12 +96,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+61 -68
View File
@@ -1,192 +1,186 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrPermissionConsistency # Get-GPOZaurrPermissionConsistency
## SYNOPSIS ## SYNOPSIS
Retrieves information about Group Policy Objects (GPOs) and checks permission consistency across domains. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### Type (Default) ### Type (Default)
```powershell ```
Get-GPOZaurrPermissionConsistency [-Type <string[]>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-IncludeGPOObject] [-VerifyInheritance] [<CommonParameters>] Get-GPOZaurrPermissionConsistency [-Type <String[]>] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-IncludeGPOObject]
[-VerifyInheritance] [<CommonParameters>]
``` ```
### GPOName ### GPOName
```powershell ```
Get-GPOZaurrPermissionConsistency [-GPOName <string>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-IncludeGPOObject] [-VerifyInheritance] [<CommonParameters>] Get-GPOZaurrPermissionConsistency [-GPOName <String>] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-IncludeGPOObject]
[-VerifyInheritance] [<CommonParameters>]
``` ```
### GPOGUID ### GPOGUID
```powershell ```
Get-GPOZaurrPermissionConsistency [-GPOGuid <string>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-IncludeGPOObject] [-VerifyInheritance] [<CommonParameters>] Get-GPOZaurrPermissionConsistency [-GPOGuid <String>] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-IncludeGPOObject]
[-VerifyInheritance] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
The Get-GPOZaurrPermissionConsistency function retrieves information about GPOs and checks permission consistency across domains. It can filter by GPO name, GPO GUID, or type of consistency. It also provides options to include/exclude specific domains and verify inheritance. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Get-GPOZaurrPermissionConsistency -GPOName "TestGPO" -Forest "Contoso" -IncludeDomains @("DomainA", "DomainB") -Type "Consistent" PS C:\> {{ Add example code here }}
Retrieves permission consistency information for the GPO named "TestGPO" in the forest "Contoso" for domains "DomainA" and "DomainB" with consistent permissions.
```
### EXAMPLE 2
```powershell
PS > Get-GPOZaurrPermissionConsistency -GPOGuid "12345678-1234-1234-1234-1234567890AB" -Forest "Fabrikam" -Type "Inconsistent" -VerifyInheritance
Retrieves permission consistency information for the GPO with GUID "12345678-1234-1234-1234-1234567890AB" in the forest "Fabrikam" for all domains with inconsistent permissions and verifies inheritance.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domains to exclude from the search. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Type, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional information about the forest. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: Type, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest name to retrieve GPO information from. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: Type, GPOName, GPOGUID Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -GPOGuid ### -GPOGuid
Specifies the GUID of the GPO to retrieve. {{ Fill GPOGuid Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: GPOGUID Parameter Sets: GPOGUID
Aliases: GUID, GPOID Aliases: GUID, GPOID
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -GPOName ### -GPOName
Specifies the name of the GPO to retrieve. {{ Fill GPOName Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: GPOName Parameter Sets: GPOName
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domains to include in the search. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Type, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeGPOObject ### -IncludeGPOObject
Indicates whether to include the GPO object in the output. {{ Fill IncludeGPOObject Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Type, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Type ### -Type
Specifies the type of consistency to check. Valid values are 'Consistent', 'Inconsistent', or 'All'. {{ Fill Type Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Type Parameter Sets: Type
Aliases: Aliases:
Possible values: Consistent, Inconsistent, All Accepted values: Consistent, Inconsistent, All
Required: False Required: False
Position: named Position: Named
Default value: All Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -VerifyInheritance ### -VerifyInheritance
Indicates whether to verify inheritance of permissions. {{ Fill VerifyInheritance Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Type, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -194,12 +188,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+48 -52
View File
@@ -1,17 +1,20 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrPermissionIssue # Get-GPOZaurrPermissionIssue
## SYNOPSIS ## SYNOPSIS
Detects Group Policy missing Authenticated Users permission while not having higher permissions. Detects Group Policy missing Authenticated Users permission while not having higher permissions.
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrPermissionIssue [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>] Get-GPOZaurrPermissionIssue [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>]
[[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -20,60 +23,42 @@ Detects Group Policy missing Authenticated Users permission while not having hig
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell ```
PS > $Issues = Get-GPOZaurrPermissionIssue $Issues = Get-GPOZaurrPermissionIssue
$Issues | Format-Table
``` ```
$Issues | Format-Table
## PARAMETERS ## PARAMETERS
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Forest ### -Forest
Target different Forest, by default current forest is used Target different Forest, by default current forest is used
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 0 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
@@ -81,15 +66,29 @@ Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 2 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -97,12 +96,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+41 -48
View File
@@ -1,148 +1,142 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrPermissionRoot # Get-GPOZaurrPermissionRoot
## SYNOPSIS ## SYNOPSIS
Retrieves the root permissions of Group Policy Objects (GPOs) based on specified criteria. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrPermissionRoot [[-IncludePermissionType] <string[]>] [[-ExcludePermissionType] <string[]>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-SkipNames] [<CommonParameters>] Get-GPOZaurrPermissionRoot [[-IncludePermissionType] <String[]>] [[-ExcludePermissionType] <String[]>]
[[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>]
[[-ExtendedForestInformation] <IDictionary>] [-SkipNames] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
Retrieves the root permissions of GPOs based on the specified criteria, including filtering by permission types, forest, domains, and more. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Get-GPOZaurrPermissionRoot -IncludePermissionType 'GpoRootCreate' -ExcludePermissionType 'GpoRootOwner' -Forest 'ExampleForest' -IncludeDomains 'Domain1', 'Domain2' -ExtendedForestInformation $ForestInfo -SkipNames PS C:\> {{ Add example code here }}
```
### EXAMPLE 2
```powershell
PS > Get-GPOZaurrPermissionRoot -IncludePermissionType 'GpoRootOwner' -ExcludePermissionType 'GpoRootCreate' -Forest 'AnotherForest' -ExcludeDomains 'Domain3' -SkipNames
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -ExcludeDomains ### -ExcludeDomains
Specifies domains to exclude from the search. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludePermissionType ### -ExcludePermissionType
Specifies the root permission types to exclude from the search. {{ Fill ExcludePermissionType Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: GpoRootCreate, GpoRootOwner Accepted values: GpoRootCreate, GpoRootOwner
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Provides additional forest information to speed up processing. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 5 Position: 5
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the target forest. By default, the current forest is used. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies domains to include in the search. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludePermissionType ### -IncludePermissionType
Specifies the root permission types to include in the search. {{ Fill IncludePermissionType Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: GpoRootCreate, GpoRootOwner Accepted values: GpoRootCreate, GpoRootOwner
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -SkipNames ### -SkipNames
Skips processing names during the operation. {{ Fill SkipNames Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -150,12 +144,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+50 -56
View File
@@ -1,180 +1,175 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrPermissionSummary # Get-GPOZaurrPermissionSummary
## SYNOPSIS ## SYNOPSIS
Retrieves a summary of Group Policy Object (GPO) permissions based on specified criteria. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrPermissionSummary [[-Type] <string[]>] [[-PermitType] <string>] [[-IncludePermissionType] <string[]>] [[-ExcludePermissionType] <string[]>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-Separator] <string>] [<CommonParameters>] Get-GPOZaurrPermissionSummary [[-Type] <String[]>] [[-PermitType] <String>]
[[-IncludePermissionType] <String[]>] [[-ExcludePermissionType] <String[]>] [[-Forest] <String>]
[[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>]
[[-Separator] <String>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
Retrieves a summary of GPO permissions based on the specified criteria, including filtering by permission types, permit types, and more. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Get-GPOZaurrPermissionSummary -Type 'All' -PermitType 'Allow' -IncludePermissionType 'GpoApply', 'GpoEdit' -ExcludePermissionType 'GpoOwner' -Forest 'ExampleForest' -IncludeDomains 'Domain1', 'Domain2' -ExtendedForestInformation $ForestInfo -Separator '|' PS C:\> {{ Add example code here }}
```
### EXAMPLE 2
```powershell
PS > Get-GPOZaurrPermissionSummary -Type 'Administrative' -PermitType 'All' -IncludePermissionType 'GpoRead' -ExcludePermissionType 'GpoRootOwner' -Forest 'AnotherForest' -ExcludeDomains 'Domain3' -Separator ','
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -ExcludeDomains ### -ExcludeDomains
Specifies domains to exclude from the search. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 5 Position: 5
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludePermissionType ### -ExcludePermissionType
Specifies the permission types to exclude from the summary. {{ Fill ExcludePermissionType Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: GpoApply, GpoEdit, GpoCustom, GpoEditDeleteModifySecurity, GpoRead, GpoOwner, GpoRootCreate, GpoRootOwner Accepted values: GpoApply, GpoEdit, GpoCustom, GpoEditDeleteModifySecurity, GpoRead, GpoOwner, GpoRootCreate, GpoRootOwner
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Provides additional forest information to speed up processing. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 7 Position: 7
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the target forest. By default, the current forest is used. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies domains to include in the search. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 6 Position: 6
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludePermissionType ### -IncludePermissionType
Specifies the permission types to include in the summary. {{ Fill IncludePermissionType Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: GpoApply, GpoEdit, GpoCustom, GpoEditDeleteModifySecurity, GpoRead, GpoOwner, GpoRootCreate, GpoRootOwner Accepted values: GpoApply, GpoEdit, GpoCustom, GpoEditDeleteModifySecurity, GpoRead, GpoOwner, GpoRootCreate, GpoRootOwner
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -PermitType ### -PermitType
Specifies the type of permission to permit. Options include 'Allow', 'Deny', and 'All'. {{ Fill PermitType Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: Allow, Deny, All Accepted values: Allow, Deny, All
Required: False Required: False
Position: 1 Position: 1
Default value: All Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Separator ### -Separator
Specifies the separator to use in the output. {{ Fill Separator Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 8 Position: 8
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Type ### -Type
Specifies the type of permissions to include. Options include 'AuthenticatedUsers', 'DomainComputers', 'Unknown', 'WellKnownAdministrative', 'NotWellKnown', 'NotWellKnownAdministrative', 'NotAdministrative', 'Administrative', and 'All'. {{ Fill Type Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: AuthenticatedUsers, DomainComputers, Unknown, WellKnownAdministrative, NotWellKnown, NotWellKnownAdministrative, NotAdministrative, Administrative, All Accepted values: AuthenticatedUsers, DomainComputers, Unknown, WellKnownAdministrative, NotWellKnown, NotWellKnownAdministrative, NotAdministrative, Administrative, All
Required: False Required: False
Position: 0 Position: 0
Default value: All Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -182,12 +177,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
-213
View File
@@ -1,213 +0,0 @@
---
external help file: GPOZaurr-help.xml
Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0
---
# Get-GPOZaurrRedirect
## SYNOPSIS
Command to detect if GPOs have correct path in SYSVOL, or someone changed it manually.
## SYNTAX
### Default (Default)
```powershell
Get-GPOZaurrRedirect [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-DateFrom <datetime>] [-DateTo <datetime>] [-DateRange <string>] [-DateProperty <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
```
### GPOName
```powershell
Get-GPOZaurrRedirect [-GPOName <string>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-DateFrom <datetime>] [-DateTo <datetime>] [-DateRange <string>] [-DateProperty <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
```
### GPOGUID
```powershell
Get-GPOZaurrRedirect [-GPOGuid <string>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-DateFrom <datetime>] [-DateTo <datetime>] [-DateRange <string>] [-DateProperty <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
```
## DESCRIPTION
Command to detect if GPOs have correct path in SYSVOL, or someone changed it manually.
## EXAMPLES
### EXAMPLE 1
```powershell
PS > Get-GPOZaurrRedirect | Format-Table
```
## PARAMETERS
### -DateFrom
Provide a date from which to start the search, by default the last X days are used
```yaml
Type: DateTime
Parameter Sets: Default, GPOName, GPOGUID
Aliases:
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -DateProperty
Choose a date property. It can be WhenCreated or WhenChanged or both. By default whenCreated is used for comparison purposes
```yaml
Type: String[]
Parameter Sets: Default, GPOName, GPOGUID
Aliases:
Possible values: WhenCreated, WhenChanged
Required: False
Position: named
Default value: WhenCreated
Accept pipeline input: False
Accept wildcard characters: True
```
### -DateRange
Provide a date range to search for, by default the last X days are used
```yaml
Type: String
Parameter Sets: Default, GPOName, GPOGUID
Aliases:
Possible values: PastHour, CurrentHour, PastDay, CurrentDay, PastMonth, CurrentMonth, PastQuarter, CurrentQuarter, Last14Days, Last21Days, Last30Days, Last7Days, Last3Days, Last1Days
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -DateTo
Provide a date to which to end the search, by default the last X days are used
```yaml
Type: DateTime
Parameter Sets: Default, GPOName, GPOGUID
Aliases:
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: Default, GPOName, GPOGUID
Aliases:
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: Default, GPOName, GPOGUID
Aliases:
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: Default, GPOName, GPOGUID
Aliases: ForestName
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -GPOGuid
Provide GPO GUID to search for. By default command returns all GPOs
```yaml
Type: String
Parameter Sets: GPOGUID
Aliases: GUID, GPOID
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -GPOName
Provide GPO name to search for. By default command returns all GPOs
```yaml
Type: String
Parameter Sets: GPOName
Aliases:
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -IncludeDomains
Include only specific domains, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: Default, GPOName, GPOGUID
Aliases: Domain, Domains
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
- `None`
## OUTPUTS
- `None`
## RELATED LINKS
- None
+79 -81
View File
@@ -1,17 +1,22 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrSysvolDFSR # Get-GPOZaurrSysvolDFSR
## SYNOPSIS ## SYNOPSIS
Gets DFSR information from the SYSVOL DFSR Gets DFSR information from the SYSVOL DFSR
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrSysvolDFSR [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-ExcludeDomainControllers] <string[]>] [[-IncludeDomains] <string[]>] [[-IncludeDomainControllers] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-SearchDFSR] <string>] [-SkipRODC] [<CommonParameters>] Get-GPOZaurrSysvolDFSR [[-Forest] <String>] [[-ExcludeDomains] <String[]>]
[[-ExcludeDomainControllers] <String[]>] [[-IncludeDomains] <String[]>]
[[-IncludeDomainControllers] <String[]>] [-SkipRODC] [[-ExtendedForestInformation] <IDictionary>]
[[-SearchDFSR] <String>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -20,28 +25,27 @@ Gets DFSR information from the SYSVOL DFSR
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell ```
PS > $DFSR = Get-GPOZaurrSysvolDFSR $DFSR = Get-GPOZaurrSysvolDFSR
$DFSR | Format-Table *
``` ```
$DFSR | Format-Table *
## PARAMETERS ## PARAMETERS
### -ExcludeDomainControllers ### -Forest
Exclude specific domain controllers, by default there are no exclusions, as long as VerifyDomainControllers switch is enabled. Otherwise this parameter is ignored. Target different Forest, by default current forest is used
```yaml ```yaml
Type: String[] Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases: ForestName
Possible values:
Required: False Required: False
Position: 2 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -ExcludeDomains
@@ -49,63 +53,30 @@ Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExcludeDomainControllers
Ability to provide Forest Information from another command to speed up processing Exclude specific domain controllers, by default there are no exclusions, as long as VerifyDomainControllers switch is enabled.
Otherwise this parameter is ignored.
```yaml
Type: IDictionary
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: __AllParameterSets
Aliases: ForestName
Possible values:
Required: False
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -IncludeDomainControllers
Include only specific domain controllers, by default all domain controllers are included, as long as VerifyDomainControllers switch is enabled. Otherwise this parameter is ignored.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: DomainControllers Aliases:
Possible values:
Required: False Required: False
Position: 4 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
@@ -113,47 +84,77 @@ Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 3 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -SearchDFSR ### -IncludeDomainControllers
Define DFSR Share. By default it uses SYSVOL Share Include only specific domain controllers, by default all domain controllers are included, as long as VerifyDomainControllers switch is enabled.
Otherwise this parameter is ignored.
```yaml ```yaml
Type: String Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases: DomainControllers
Possible values:
Required: False Required: False
Position: 6 Position: 5
Default value: SYSVOL Share Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -SkipRODC ### -SkipRODC
Skip Read-Only Domain Controllers. By default all domain controllers are included. Skip Read-Only Domain Controllers.
By default all domain controllers are included.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: 6
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -SearchDFSR
Define DFSR Share.
By default it uses SYSVOL Share
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 7
Default value: SYSVOL Share
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -161,12 +162,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+93 -97
View File
@@ -1,22 +1,28 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrUpdates # Get-GPOZaurrUpdates
## SYNOPSIS ## SYNOPSIS
Gets the list of GPOs created or updated in the last X number of days. Gets the list of GPOs created or updated in the last X number of days.
## SYNTAX ## SYNTAX
### DateRange (Default) ### DateRange (Default)
```powershell ```
Get-GPOZaurrUpdates -DateRange <string> [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-DateProperty <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>] Get-GPOZaurrUpdates [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
-DateRange <String> [-DateProperty <String[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
``` ```
### Dates ### Dates
```powershell ```
Get-GPOZaurrUpdates -DateFrom <datetime> -DateTo <datetime> [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-DateProperty <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>] Get-GPOZaurrUpdates [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
-DateFrom <DateTime> -DateTo <DateTime> [-DateProperty <String[]>] [-ExtendedForestInformation <IDictionary>]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -25,19 +31,63 @@ Gets the list of GPOs created or updated in the last X number of days.
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell
PS > Get-GPOZaurrUpdates -DateRange Last14Days -DateProperty WhenCreated, WhenChanged -Verbose -IncludeDomains 'ad.evotec.pl' | Format-List
``` ```
Get-GPOZaurrUpdates -DateRange Last14Days -DateProperty WhenCreated, WhenChanged -Verbose -IncludeDomains 'ad.evotec.pl' | Format-List
```
### EXAMPLE 2 ### EXAMPLE 2
```powershell ```
PS > Get-GPOZaurrUpdates -DateRange Last14Days -DateProperty WhenCreated -Verbose | Format-Table Get-GPOZaurrUpdates -DateRange Last14Days -DateProperty WhenCreated -Verbose | Format-Table
``` ```
## PARAMETERS ## PARAMETERS
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: (All)
Aliases: ForestName
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludeDomains
Include only specific domains, by default whole forest is scanned
ą
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Domain, Domains
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -DateFrom ### -DateFrom
Provide a date from which to start the search, by default the last X days are used Provide a date from which to start the search, by default the last X days are used
@@ -45,45 +95,12 @@ Provide a date from which to start the search, by default the last X days are us
Type: DateTime Type: DateTime
Parameter Sets: Dates Parameter Sets: Dates
Aliases: Aliases:
Possible values:
Required: True Required: True
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -DateProperty
Choose a date property. It can be WhenCreated or WhenChanged or both. By default whenCreated is used for comparison purposes
```yaml
Type: String[]
Parameter Sets: DateRange, Dates
Aliases:
Possible values: WhenCreated, WhenChanged
Required: False
Position: named
Default value: WhenCreated
Accept pipeline input: False
Accept wildcard characters: True
```
### -DateRange
Provide a date range to search for, by default the last X days are used
```yaml
Type: String
Parameter Sets: DateRange
Aliases:
Possible values: PastHour, CurrentHour, PastDay, CurrentDay, PastMonth, CurrentMonth, PastQuarter, CurrentQuarter, Last14Days, Last21Days, Last30Days, Last7Days, Last3Days, Last1Days
Required: True
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### -DateTo ### -DateTo
@@ -93,29 +110,44 @@ Provide a date to which to end the search, by default the last X days are used
Type: DateTime Type: DateTime
Parameter Sets: Dates Parameter Sets: Dates
Aliases: Aliases:
Possible values:
Required: True Required: True
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -DateRange
Exclude domain from search, by default whole forest is scanned Provide a date range to search for, by default the last X days are used
```yaml
Type: String
Parameter Sets: DateRange
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -DateProperty
Choose a date property.
It can be WhenCreated or WhenChanged or both.
By default whenCreated is used for comparison purposes
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: DateRange, Dates Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: WhenCreated
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
@@ -123,47 +155,14 @@ Ability to provide Forest Information from another command to speed up processin
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: DateRange, Dates Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: DateRange, Dates
Aliases: ForestName
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -IncludeDomains
Include only specific domains, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: DateRange, Dates
Aliases: Domain, Domains
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -171,12 +170,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+95 -103
View File
@@ -1,17 +1,21 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrWMI # Get-GPOZaurrWMI
## SYNOPSIS ## SYNOPSIS
Get Group Policy WMI filter Get Group Policy WMI filter
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Get-GPOZaurrWMI [[-Guid] <guid[]>] [[-Name] <string[]>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-AsHashtable] [<CommonParameters>] Get-GPOZaurrWMI [[-Guid] <Guid[]>] [[-Name] <String[]>] [[-Forest] <String>] [[-ExcludeDomains] <String[]>]
[[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>] [-AsHashtable]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -20,113 +24,30 @@ Get Group Policy WMI filter
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell
PS > Get-GPOZaurrWMI -AsHashtable
``` ```
Get-GPOZaurrWMI -AsHashtable
```
### EXAMPLE 2 ### EXAMPLE 2
```powershell
PS > Get-GPOZaurrWMI | Format-Table
``` ```
Get-GPOZaurrWMI | Format-Table
```
## PARAMETERS ## PARAMETERS
### -AsHashtable
Return output as hashtable
```yaml
Type: SwitchParameter
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: __AllParameterSets
Aliases: ForestName
Possible values:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Guid ### -Guid
Search for specific filter using GUID Search for specific filter using GUID
```yaml ```yaml
Type: Guid[] Type: Guid[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 0 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -IncludeDomains
Include only specific domains, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases: Domain, Domains
Possible values:
Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### -Name ### -Name
@@ -134,15 +55,89 @@ Search for specific filter using Name
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: (All)
Aliases: ForestName
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludeDomains
Include only specific domains, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Domain, Domains
Required: False
Position: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: 6
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -AsHashtable
Return output as hashtable
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -150,12 +145,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+178 -220
View File
@@ -1,17 +1,21 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Invoke-GPOZaurr # Invoke-GPOZaurr
## SYNOPSIS ## SYNOPSIS
Single cmdlet that provides 360 degree overview of Group Policies in Active Directory Forest. Single cmdlet that provides 360 degree overview of Group Policies in Active Directory Forest.
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Invoke-GPOZaurr [[-Type] <string[]>] [[-Exclusions] <Object>] [-FilePath <string>] [-PassThru] [-HideHTML] [-HideSteps] [-ShowError] [-ShowWarning] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-Online] [-SplitReports] [-GPOName <string[]>] [-GPOGUID <string[]>] [<CommonParameters>] Invoke-GPOZaurr [[-Exclusions] <Object>] [-FilePath <String>] [[-Type] <String[]>] [-PassThru] [-HideHTML]
[-HideSteps] [-ShowError] [-ShowWarning] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-Online] [-SplitReports] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -20,37 +24,20 @@ Single cmdlet that provides 360 degree overview of Group Policies in Active Dire
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell
PS > Invoke-GPOZaurr
``` ```
Invoke-GPOZaurr
```
### EXAMPLE 2 ### EXAMPLE 2
```powershell ```
PS > Invoke-GPOZaurr -Type GPOOrganizationalUnit -Online -FilePath $PSScriptRoot\Reports\GPOZaurrOU.html -Exclusions @( Invoke-GPOZaurr -Type GPOOrganizationalUnit -Online -FilePath $PSScriptRoot\Reports\GPOZaurrOU.html -Exclusions @(
'*OU=Production,DC=ad,DC=evotec,DC=pl'
)
``` ```
'*OU=Production,DC=ad,DC=evotec,DC=pl'
)
## PARAMETERS ## PARAMETERS
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Exclusions ### -Exclusions
Allows to mark as excluded some Group Policies or Organizational Units depending on type. Allows to mark as excluded some Group Policies or Organizational Units depending on type.
Can be a scriptblock or array depending on supported way by underlying report. Can be a scriptblock or array depending on supported way by underlying report.
@@ -60,15 +47,14 @@ Exclusions should be used only if there is single report being asked for.
```yaml ```yaml
Type: Object Type: Object
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ExcludeGroupPolicies, ExclusionsCode Aliases: ExcludeGroupPolicies, ExclusionsCode
Possible values:
Required: False Required: False
Position: 1 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -FilePath ### -FilePath
@@ -76,191 +62,14 @@ Path to the file where the report will be saved.
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: __AllParameterSets
Aliases: ForestName
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -GPOGUID
{{ Fill GPOGUID Description }}
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases: GUID
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -GPOName
{{ Fill GPOName Description }}
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases: Name
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -HideHTML
Do not auto open HTML report in default browser
```yaml
Type: SwitchParameter
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
```
### -HideSteps
Do not show steps in report
```yaml
Type: SwitchParameter
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
```
### -IncludeDomains
Include only specific domains, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases: Domain, Domains
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Online
Forces report to use online resources in HTML (using CDN most of the time), by default it is run offline, and inlines all CSS/JS code.
```yaml
Type: SwitchParameter
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
```
### -PassThru
Returns created objects after the report is done
```yaml
Type: SwitchParameter
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
```
### -ShowError
Show errors in HTML report. Useful in case the report is being run as Scheduled Task
```yaml
Type: SwitchParameter
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
```
### -ShowWarning
Show warnings in HTML report. Useful in case the report is being run as Scheduled Task
```yaml
Type: SwitchParameter
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
```
### -SplitReports
Split report into multiple files, one for each report. This can be useful for large domains with huge reports.
```yaml
Type: SwitchParameter
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### -Type ### -Type
@@ -268,15 +77,167 @@ Type of report to be generated from a list of available reports.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 0 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -PassThru
Returns created objects after the report is done
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```
### -HideHTML
Do not auto open HTML report in default browser
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```
### -HideSteps
Do not show steps in report
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```
### -ShowError
Show errors in HTML report.
Useful in case the report is being run as Scheduled Task
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```
### -ShowWarning
Show warnings in HTML report.
Useful in case the report is being run as Scheduled Task
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: (All)
Aliases: ForestName
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludeDomains
Include only specific domains, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Domain, Domains
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Online
Forces report to use online resources in HTML (using CDN most of the time), by default it is run offline, and inlines all CSS/JS code.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```
### -SplitReports
Split report into multiple files, one for each report.
This can be useful for large domains with huge reports.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -284,12 +245,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+92 -147
View File
@@ -1,82 +1,74 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Invoke-GPOZaurrContent # Invoke-GPOZaurrContent
## SYNOPSIS ## SYNOPSIS
Invokes GPOZaurrContent function to retrieve Group Policy Objects information. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### Default (Default) ### Default (Default)
```powershell ```
Invoke-GPOZaurrContent [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-Type <string[]>] [-Splitter <string>] [-FullObjects] [-OutputType <string[]>] [-OutputPath <string>] [-Open] [-Online] [-CategoriesOnly] [-SingleObject] [-SkipNormalize] [-SkipCleanup] [-Extended] [-GPOName <string[]>] [-GPOGUID <string[]>] [<CommonParameters>] Invoke-GPOZaurrContent [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-ExtendedForestInformation <IDictionary>] [-Type <String[]>] [-Splitter <String>] [-FullObjects]
[-OutputType <String[]>] [-OutputPath <String>] [-Open] [-Online] [-CategoriesOnly] [-SingleObject]
[-SkipNormalize] [-SkipCleanup] [-Extended] [<CommonParameters>]
``` ```
### Local ### Local
```powershell ```
Invoke-GPOZaurrContent [-GPOPath <string>] [-Type <string[]>] [-Splitter <string>] [-FullObjects] [-OutputType <string[]>] [-OutputPath <string>] [-Open] [-Online] [-CategoriesOnly] [-SingleObject] [-SkipNormalize] [-SkipCleanup] [-Extended] [<CommonParameters>] Invoke-GPOZaurrContent [-GPOPath <String>] [-Type <String[]>] [-Splitter <String>] [-FullObjects]
[-OutputType <String[]>] [-OutputPath <String>] [-Open] [-Online] [-CategoriesOnly] [-SingleObject]
[-SkipNormalize] [-SkipCleanup] [-Extended] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function retrieves Group Policy Objects information based on the specified parameters. It can search for GPOs in a forest, exclude specific domains, include specific domains, and provide extended forest information. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Invoke-GPOZaurrContent -Forest "Contoso" -IncludeDomains "Domain1", "Domain2" -Type "Security" -OutputType "HTML" -OutputPath "C:\Reports\GPOReport.html" PS C:\> {{ Add example code here }}
Retrieves security-related Group Policy Objects information for the specified domains and saves the output as an HTML file.
```
### EXAMPLE 2
```powershell
PS > Invoke-GPOZaurrContent -GPOPath "CN={31B2F340-016D-11D2-945F-00C04FB984F9},CN=Policies,CN=System,DC=Contoso,DC=com" -Type "All" -OutputType "Object"
Retrieves all information for a specific Group Policy Object and outputs the result as an object.
```
### EXAMPLE 3
```powershell
PS > Invoke-GPOZaurrContent -GPOName "Group Policy Test" -SingleObject | ConvertTo-Json -Depth 3
Quickly view GPO settings by name in JSON format for easy inspection.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -CategoriesOnly ### -CategoriesOnly
Indicates whether to retrieve only categories. {{ Fill CategoriesOnly Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Default, Local Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domains to exclude from the search. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Default Parameter Sets: Default
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Extended ### -Extended
@@ -84,207 +76,165 @@ Accept wildcard characters: True
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Default, Local Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional information about the forest. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: Default Parameter Sets: Default
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest name to search for Group Policy Objects. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: Default Parameter Sets: Default
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -FullObjects ### -FullObjects
Indicates whether to retrieve full objects. {{ Fill FullObjects Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Default, Local Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
```
### -GPOGUID
{{ Fill GPOGUID Description }}
```yaml
Type: String[]
Parameter Sets: Default
Aliases:
Possible values:
Required: False
Position: named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -GPOName
{{ Fill GPOName Description }}
```yaml
Type: String[]
Parameter Sets: Default
Aliases: Name
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### -GPOPath ### -GPOPath
Specifies the path to a specific Group Policy Object. {{ Fill GPOPath Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: Local Parameter Sets: Local
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domains to include in the search. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Default Parameter Sets: Default
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Online ### -Online
Indicates whether to retrieve information online. {{ Fill Online Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Default, Local Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Open ### -Open
Indicates whether to open the output after retrieval. {{ Fill Open Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Default, Local Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -OutputPath ### -OutputPath
Specifies the path to save the output. {{ Fill OutputPath Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: Default, Local Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -OutputType ### -OutputType
Specifies the type of output (HTML or Object). {{ Fill OutputType Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Default, Local Parameter Sets: (All)
Aliases: Aliases:
Possible values: HTML, Object Accepted values: HTML, Object
Required: False Required: False
Position: named Position: Named
Default value: Object Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -SingleObject ### -SingleObject
Indicates whether to retrieve a single object. {{ Fill SingleObject Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Default, Local Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -SkipCleanup ### -SkipCleanup
@@ -292,63 +242,59 @@ Accept wildcard characters: True
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Default, Local Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -SkipNormalize ### -SkipNormalize
Indicates whether to skip normalization. {{ Fill SkipNormalize Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Default, Local Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Splitter ### -Splitter
Specifies the delimiter to use for splitting information. {{ Fill Splitter Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: Default, Local Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: [System.Environment]::NewLine Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Type ### -Type
Specifies the type of information to retrieve. {{ Fill Type Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Default, Local Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -356,12 +302,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+429 -9
View File
@@ -1,16 +1,70 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Invoke-GPOZaurrPermission # Invoke-GPOZaurrPermission
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
```powershell
Invoke-GPOZaurrPermission ### Level
```
Invoke-GPOZaurrPermission [[-PermissionRules] <ScriptBlock>] -Level <Int32> -Limit <Int32> [-Type <String[]>]
[-ApprovedGroups <Array>] [-Trustee <Array>] [-TrusteePermissionType <GPPermissionType>]
[-TrusteeType <String>] [-GPOCache <IDictionary>] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-LimitAdministrativeGroupsToDomain]
[-WhatIf] [-Confirm] [<CommonParameters>]
```
### Linked
```
Invoke-GPOZaurrPermission [[-PermissionRules] <ScriptBlock>] -Linked <String> [-Type <String[]>]
[-ApprovedGroups <Array>] [-Trustee <Array>] [-TrusteePermissionType <GPPermissionType>]
[-TrusteeType <String>] [-GPOCache <IDictionary>] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-LimitAdministrativeGroupsToDomain]
[-SkipDuplicates] [-WhatIf] [-Confirm] [<CommonParameters>]
```
### ADObject
```
Invoke-GPOZaurrPermission [[-PermissionRules] <ScriptBlock>] -ADObject <ADObject[]> [-Type <String[]>]
[-ApprovedGroups <Array>] [-Trustee <Array>] [-TrusteePermissionType <GPPermissionType>]
[-TrusteeType <String>] [-GPOCache <IDictionary>] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-LimitAdministrativeGroupsToDomain]
[-SkipDuplicates] [-WhatIf] [-Confirm] [<CommonParameters>]
```
### Filter
```
Invoke-GPOZaurrPermission [[-PermissionRules] <ScriptBlock>] [-Filter <String>] [-SearchBase <String>]
[-SearchScope <ADSearchScope>] [-Type <String[]>] [-ApprovedGroups <Array>] [-Trustee <Array>]
[-TrusteePermissionType <GPPermissionType>] [-TrusteeType <String>] [-GPOCache <IDictionary>]
[-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-ExtendedForestInformation <IDictionary>] [-LimitAdministrativeGroupsToDomain] [-SkipDuplicates] [-WhatIf]
[-Confirm] [<CommonParameters>]
```
### GPOName
```
Invoke-GPOZaurrPermission [[-PermissionRules] <ScriptBlock>] [-GPOName <String>] [-Type <String[]>]
[-ApprovedGroups <Array>] [-Trustee <Array>] [-TrusteePermissionType <GPPermissionType>]
[-TrusteeType <String>] [-GPOCache <IDictionary>] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-LimitAdministrativeGroupsToDomain]
[-SkipDuplicates] [-WhatIf] [-Confirm] [<CommonParameters>]
```
### GPOGUID
```
Invoke-GPOZaurrPermission [[-PermissionRules] <ScriptBlock>] [-GPOGuid <String>] [-Type <String[]>]
[-ApprovedGroups <Array>] [-Trustee <Array>] [-TrusteePermissionType <GPPermissionType>]
[-TrusteeType <String>] [-GPOCache <IDictionary>] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-LimitAdministrativeGroupsToDomain]
[-SkipDuplicates] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -18,25 +72,391 @@ Invoke-GPOZaurrPermission
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
Invoke-GPOZaurrPermission PS C:\> {{ Add example code here }}
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -ADObject
{{ Fill ADObject Description }}
```yaml
Type: ADObject[]
Parameter Sets: ADObject
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: True (ByPropertyName, ByValue)
Accept wildcard characters: False
```
### -ApprovedGroups
{{ Fill ApprovedGroups Description }}
```yaml
Type: Array
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains
{{ Fill ExcludeDomains Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }}
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Filter
{{ Fill Filter Description }}
```yaml
Type: String
Parameter Sets: Filter
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Forest
{{ Fill Forest Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases: ForestName
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -GPOCache
{{ Fill GPOCache Description }}
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -GPOGuid
{{ Fill GPOGuid Description }}
```yaml
Type: String
Parameter Sets: GPOGUID
Aliases: GUID, GPOID
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -GPOName
{{ Fill GPOName Description }}
```yaml
Type: String
Parameter Sets: GPOName
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludeDomains
{{ Fill IncludeDomains Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Domain, Domains
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Level
{{ Fill Level Description }}
```yaml
Type: Int32
Parameter Sets: Level
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Limit
{{ Fill Limit Description }}
```yaml
Type: Int32
Parameter Sets: Level
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -LimitAdministrativeGroupsToDomain
{{ Fill LimitAdministrativeGroupsToDomain Description }}
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Linked
{{ Fill Linked Description }}
```yaml
Type: String
Parameter Sets: Linked
Aliases:
Accepted values: Root, DomainControllers, Site, OrganizationalUnit
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -PermissionRules
{{ Fill PermissionRules Description }}
```yaml
Type: ScriptBlock
Parameter Sets: (All)
Aliases:
Required: False
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -SearchBase
{{ Fill SearchBase Description }}
```yaml
Type: String
Parameter Sets: Filter
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -SearchScope
{{ Fill SearchScope Description }}
```yaml
Type: ADSearchScope
Parameter Sets: Filter
Aliases:
Accepted values: Base, OneLevel, Subtree
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -SkipDuplicates
{{ Fill SkipDuplicates Description }}
```yaml
Type: SwitchParameter
Parameter Sets: Linked, ADObject, Filter, GPOName, GPOGUID
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Trustee
{{ Fill Trustee Description }}
```yaml
Type: Array
Parameter Sets: (All)
Aliases: Principal
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -TrusteePermissionType
{{ Fill TrusteePermissionType Description }}
```yaml
Type: GPPermissionType
Parameter Sets: (All)
Aliases:
Accepted values: None, GpoApply, GpoRead, GpoEdit, GpoEditDeleteModifySecurity, GpoCustom, WmiFilterEdit, WmiFilterFullControl, WmiFilterCustom, StarterGpoRead, StarterGpoEdit, StarterGpoFullControl, StarterGpoCustom, SomCreateWmiFilter, SomWmiFilterFullControl, SomCreateGpo, SomCreateStarterGpo, SomLogging, SomPlanning, SomLink
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -TrusteeType
{{ Fill TrusteeType Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases: PrincipalType
Accepted values: DistinguishedName, Name, Sid
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Type
{{ Fill Type Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Accepted values: Unknown, NotWellKnown, NotWellKnownAdministrative, NotAdministrative, All
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters ### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS ## INPUTS
- `None` ### Microsoft.ActiveDirectory.Management.ADObject[]
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+43 -54
View File
@@ -1,150 +1,140 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Invoke-GPOZaurrSupport # Invoke-GPOZaurrSupport
## SYNOPSIS ## SYNOPSIS
Invokes GPOZaurrSupport function to retrieve Group Policy information. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Invoke-GPOZaurrSupport [[-Type] <string>] [[-ComputerName] <string>] [[-UserName] <string>] [[-Path] <string>] [[-Splitter] <string>] [-PreventShow] [-Online] [<CommonParameters>] Invoke-GPOZaurrSupport [[-Type] <String>] [[-ComputerName] <String>] [[-UserName] <String>] [[-Path] <String>]
[[-Splitter] <String>] [-PreventShow] [-Online] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function retrieves Group Policy information using either HTML, XML, or Object format. It can be run locally or on a remote computer. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Invoke-GPOZaurrSupport -Type HTML -ComputerName "RemoteComputer" -UserName "Admin" -Path (Join-Path $env:TEMP 'GPOReport.html') PS C:\> {{ Add example code here }}
Retrieves Group Policy information in HTML format from a remote computer and saves it to a specified path.
```
### EXAMPLE 2
```powershell
PS > Invoke-GPOZaurrSupport -Type XML -Path (Join-Path $env:TEMP 'GPOReport.xml') -Online
Retrieves the latest Group Policy information in XML format and saves it to a specified path.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -ComputerName ### -ComputerName
Specifies the name of the remote computer to retrieve Group Policy information from. {{ Fill ComputerName Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Server Aliases: Server
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Online ### -Online
Runs the function online to retrieve the latest Group Policy information. {{ Fill Online Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Path ### -Path
Specifies the path to save the output file. If not provided, a temporary file will be created. {{ Fill Path Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -PreventShow ### -PreventShow
Prevents displaying the output in the console. {{ Fill PreventShow Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Splitter ### -Splitter
Specifies the delimiter for splitting output data. Default is a new line. {{ Fill Splitter Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: [System.Environment]::NewLine Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Type ### -Type
Specifies the type of output format. Valid values are 'NativeHTML', 'HTML', 'XML', or 'Object'. Default is 'HTML'. {{ Fill Type Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: NativeHTML, HTML, XML, Object Accepted values: NativeHTML, HTML, XML, Object
Required: False Required: False
Position: 0 Position: 0
Default value: HTML Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -UserName ### -UserName
Specifies the username to run the function as on the remote computer. {{ Fill UserName Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: User Aliases: User
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -152,12 +142,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+82 -65
View File
@@ -1,198 +1,216 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# New-GPOZaurrWMI # New-GPOZaurrWMI
## SYNOPSIS ## SYNOPSIS
Creates a new WMI filter based on a WMI filter query. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
New-GPOZaurrWMI [-Name] <string> [[-Description] <string>] [[-Namespace] <string>] [-Query] <string> [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-SkipQueryCheck] [-Force] [-WhatIf] [-Confirm] [<CommonParameters>] New-GPOZaurrWMI [-Name] <String> [[-Description] <String>] [[-Namespace] <String>] [-Query] <String>
[-SkipQueryCheck] [-Force] [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>]
[[-ExtendedForestInformation] <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function creates a new WMI filter in Active Directory based on a specified WMI filter query. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > New-GPOZaurrWMI -Name "TestWMIFilter1" -Query "SELECT * FROM Win32_OperatingSystem" -Force PS C:\> {{ Add example code here }}
Creates a new WMI filter named "TestWMIFilter1" targeting all Windows operating systems.
```
### EXAMPLE 2
```powershell
PS > New-GPOZaurrWMI -Name "TestWMIFilter2" -Query "SELECT * FROM Win32_Processor" -Forest "Contoso" -IncludeDomains "FinanceDomain"
Creates a new WMI filter named "TestWMIFilter2" targeting all processors in the "FinanceDomain" within the "Contoso" forest.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Description ### -Description
The description for the new WMI filter. Default is an empty string. {{ Fill Description Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -ExcludeDomains
An array of domains to exclude from WMI application. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 5 Position: 5
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Additional information about the forest for WMI customization. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 7 Position: 7
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Force ### -Force
Switch to force the creation of the WMI entry without confirmation. {{ Fill Force Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
The forest to target for WMI creation. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
An array of domains to include for WMI application. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 6 Position: 6
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Name ### -Name
The name of the new WMI filter to be created. {{ Fill Name Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: True Required: True
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Namespace ### -Namespace
The WMI namespace to target. Default is 'root\CIMv2'. {{ Fill Namespace Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: root\CIMv2 Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Query ### -Query
The WMI filter query to be applied to the WMI entry. {{ Fill Query Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: True Required: True
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -SkipQueryCheck ### -SkipQueryCheck
Switch to skip the query check before creating the WMI entry. {{ Fill SkipQueryCheck Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -200,12 +218,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+147 -119
View File
@@ -1,27 +1,36 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Optimize-GPOZaurr # Optimize-GPOZaurr
## SYNOPSIS ## SYNOPSIS
Enables or disables user/computer section of group policy based on it's content. Enables or disables user/computer section of group policy based on it's content.
## SYNTAX ## SYNTAX
### GPOName (Default) ### GPOName (Default)
```powershell ```
Optimize-GPOZaurr [[-ExcludeGroupPolicies] <scriptblock>] -GPOName <string> [-LimitProcessing <int>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>] Optimize-GPOZaurr [[-ExcludeGroupPolicies] <ScriptBlock>] -GPOName <String> [-LimitProcessing <Int32>]
[-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-ExtendedForestInformation <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
### GPOGUID ### GPOGUID
```powershell ```
Optimize-GPOZaurr [[-ExcludeGroupPolicies] <scriptblock>] -GPOGuid <string> [-LimitProcessing <int>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>] Optimize-GPOZaurr [[-ExcludeGroupPolicies] <ScriptBlock>] -GPOGuid <String> [-LimitProcessing <Int32>]
[-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-ExtendedForestInformation <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
### All ### All
```powershell ```
Optimize-GPOZaurr [[-ExcludeGroupPolicies] <scriptblock>] -All [-LimitProcessing <int>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>] Optimize-GPOZaurr [[-ExcludeGroupPolicies] <ScriptBlock>] [-All] [-LimitProcessing <Int32>] [-Forest <String>]
[-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-WhatIf]
[-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -30,116 +39,34 @@ Enables or disables user/computer section of group policy based on it's content.
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell
PS > Optimize-GPOZaurr -All -WhatIf -Verbose -LimitProcessing 2
``` ```
Optimize-GPOZaurr -All -WhatIf -Verbose -LimitProcessing 2
```
### EXAMPLE 2 ### EXAMPLE 2
```powershell ```
PS > Optimize-GPOZaurr -All -WhatIf -Verbose -LimitProcessing 2 { Optimize-GPOZaurr -All -WhatIf -Verbose -LimitProcessing 2 {
Skip-GroupPolicy -Name 'TEST | Drive Mapping 1' ```
Skip-GroupPolicy -Name 'TEST | Drive Mapping 1'
Skip-GroupPolicy -Name 'TEST | Drive Mapping 2' Skip-GroupPolicy -Name 'TEST | Drive Mapping 2'
} }
```
## PARAMETERS ## PARAMETERS
### -All
{{ Fill All Description }}
```yaml
Type: SwitchParameter
Parameter Sets: All
Aliases:
Possible values:
Required: True
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: GPOName, GPOGUID, All
Aliases:
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExcludeGroupPolicies ### -ExcludeGroupPolicies
Provide a list of group policies to skip using Skip-GroupPolicy cmdlet Provide a list of group policies to skip using Skip-GroupPolicy cmdlet
```yaml ```yaml
Type: ScriptBlock Type: ScriptBlock
Parameter Sets: GPOName, GPOGUID, All Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: GPOName, GPOGUID, All
Aliases:
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: GPOName, GPOGUID, All
Aliases: ForestName
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -GPOGuid
{{ Fill GPOGuid Description }}
```yaml
Type: String
Parameter Sets: GPOGUID
Aliases: GUID, GPOID
Possible values:
Required: True
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### -GPOName ### -GPOName
@@ -149,13 +76,88 @@ Accept wildcard characters: True
Type: String Type: String
Parameter Sets: GPOName Parameter Sets: GPOName
Aliases: Name, DisplayName Aliases: Name, DisplayName
Possible values:
Required: True Required: True
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -GPOGuid
{{ Fill GPOGuid Description }}
```yaml
Type: String
Parameter Sets: GPOGUID
Aliases: GUID, GPOID
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -All
{{ Fill All Description }}
```yaml
Type: SwitchParameter
Parameter Sets: All
Aliases:
Required: True
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```
### -LimitProcessing
Allows to specify maximum number of items that will be fixed in a single run.
It doesn't affect amount of GPOs processed
```yaml
Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False
```
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: (All)
Aliases: ForestName
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
@@ -163,31 +165,60 @@ Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: GPOName, GPOGUID, All Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -LimitProcessing ### -ExtendedForestInformation
Allows to specify maximum number of items that will be fixed in a single run. It doesn't affect amount of GPOs processed Ability to provide Forest Information from another command to speed up processing
```yaml ```yaml
Type: Int32 Type: IDictionary
Parameter Sets: GPOName, GPOGUID, All Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: 0 Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -195,12 +226,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+51 -52
View File
@@ -1,44 +1,46 @@
--- ---
Module Name: GPOZaurr Module Name: GPOZaurr
Module Guid: f7d4c9e4-0298-4f51-ad77-e8e3febebbde Module Guid: f7d4c9e4-0298-4f51-ad77-e8e3febebbde
Download Help Link: https://github.com/EvotecIT/GPOZaurr Download Help Link: {{ Update Download Link }}
Help Version: 1.1.10 Help Version: {{ Please enter version of help manually (X.X.X.X) format }}
Locale: en-US Locale: en-US
--- ---
# GPOZaurr Module # GPOZaurr Module
## Description ## Description
Group Policy Eater is a PowerShell module that aims to gather information about Group Policies but also allows fixing issues that you may find in them. {{ Fill in the Description }}
## GPOZaurr Cmdlets ## GPOZaurr Cmdlets
### [Add-GPOPermission](Add-GPOPermission.md) ### [Add-GPOPermission](Add-GPOPermission.md)
{{ Fill in the Description }} {{ Fill in the Synopsis }}
### [Add-GPOZaurrPermission](Add-GPOZaurrPermission.md) ### [Add-GPOZaurrPermission](Add-GPOZaurrPermission.md)
{{ Fill in the Description }} {{ Fill in the Synopsis }}
### [Backup-GPOZaurr](Backup-GPOZaurr.md) ### [Backup-GPOZaurr](Backup-GPOZaurr.md)
Provides Backup functionality to Group Policies Provides Backup functionality to Group Policies
### [Clear-GPOZaurrSysvolDFSR](Clear-GPOZaurrSysvolDFSR.md) ### [Clear-GPOZaurrSysvolDFSR](Clear-GPOZaurrSysvolDFSR.md)
Clears the ConflictAndDeleted folder in DFSR for specified GPOs. {{ Fill in the Synopsis }}
### [ConvertFrom-CSExtension](ConvertFrom-CSExtension.md) ### [ConvertFrom-CSExtension](ConvertFrom-CSExtension.md)
Converts Client-side Extension (CSE) GUIDs to their corresponding names. {{ Fill in the Synopsis }}
### [Export-GPOZaurrContent](Export-GPOZaurrContent.md) ### [Export-GPOZaurrContent](Export-GPOZaurrContent.md)
Exports Group Policy Objects (GPOs) to XML or HTML files. Saves GPOs to XML or HTML files.
### [Find-CSExtension](Find-CSExtension.md) ### [Find-CSExtension](Find-CSExtension.md)
This function retrieves Group Policy Client Side Extensions (CSEs) from a specified Windows computer. {{ Fill in the Synopsis }}
### [Get-GPOZaurr](Get-GPOZaurr.md) ### [Get-GPOZaurr](Get-GPOZaurr.md)
Gets information about all Group Policies. Similar to what Get-GPO provides by default. Gets information about all Group Policies.
Similar to what Get-GPO provides by default.
### [Get-GPOZaurrAD](Get-GPOZaurrAD.md) ### [Get-GPOZaurrAD](Get-GPOZaurrAD.md)
Retrieves Group Policy Objects (GPOs) information from Active Directory. {{ Fill in the Synopsis }}
### [Get-GPOZaurrBackupInformation](Get-GPOZaurrBackupInformation.md) ### [Get-GPOZaurrBackupInformation](Get-GPOZaurrBackupInformation.md)
Retrieves backup information from GPOZaurr manifest files. {{ Fill in the Synopsis }}
### [Get-GPOZaurrBroken](Get-GPOZaurrBroken.md) ### [Get-GPOZaurrBroken](Get-GPOZaurrBroken.md)
Detects broken or otherwise damaged Group Policies Detects broken or otherwise damaged Group Policies
@@ -47,40 +49,37 @@ Detects broken or otherwise damaged Group Policies
Finds any GPO link that doesn't have a matching GPO (already removed GPO). Finds any GPO link that doesn't have a matching GPO (already removed GPO).
### [Get-GPOZaurrDictionary](Get-GPOZaurrDictionary.md) ### [Get-GPOZaurrDictionary](Get-GPOZaurrDictionary.md)
Retrieves a dictionary of Group Policy Objects (GPOs) with their associated types and paths. {{ Fill in the Synopsis }}
### [Get-GPOZaurrDuplicateObject](Get-GPOZaurrDuplicateObject.md) ### [Get-GPOZaurrDuplicateObject](Get-GPOZaurrDuplicateObject.md)
Retrieves duplicate Group Policy Objects (GPOs) within a specified forest. {{ Fill in the Synopsis }}
### [Get-GPOZaurrFiles](Get-GPOZaurrFiles.md) ### [Get-GPOZaurrFiles](Get-GPOZaurrFiles.md)
Retrieves information about Group Policy Objects (GPOs) stored in SYSVOL and NETLOGON folders. {{ Fill in the Synopsis }}
### [Get-GPOZaurrFilesPolicyDefinition](Get-GPOZaurrFilesPolicyDefinition.md) ### [Get-GPOZaurrFilesPolicyDefinition](Get-GPOZaurrFilesPolicyDefinition.md)
Retrieves policy definitions for Group Policy Objects (GPOs) within specified domains. {{ Fill in the Synopsis }}
### [Get-GPOZaurrFolders](Get-GPOZaurrFolders.md) ### [Get-GPOZaurrFolders](Get-GPOZaurrFolders.md)
Retrieves information about GPO folders within specified domains. {{ Fill in the Synopsis }}
### [Get-GPOZaurrInheritance](Get-GPOZaurrInheritance.md) ### [Get-GPOZaurrInheritance](Get-GPOZaurrInheritance.md)
Retrieves inheritance information for Group Policy Objects (GPOs) within specified Organizational Units (OUs). Short description
### [Get-GPOZaurrLegacyFiles](Get-GPOZaurrLegacyFiles.md) ### [Get-GPOZaurrLegacyFiles](Get-GPOZaurrLegacyFiles.md)
Retrieves legacy Group Policy Object (GPO) files from the SYSVOL directory of specified domains within a forest. {{ Fill in the Synopsis }}
### [Get-GPOZaurrLink](Get-GPOZaurrLink.md) ### [Get-GPOZaurrLink](Get-GPOZaurrLink.md)
Retrieves Group Policy Object (GPO) links based on specified criteria. {{ Fill in the Synopsis }}
### [Get-GPOZaurrLinkSummary](Get-GPOZaurrLinkSummary.md) ### [Get-GPOZaurrLinkSummary](Get-GPOZaurrLinkSummary.md)
Retrieves a summary of GPO links based on specified criteria. {{ Fill in the Synopsis }}
### [Get-GPOZaurrMissingFiles](Get-GPOZaurrMissingFiles.md)
Retrieves information about missing files in Group Policy Objects (GPOs) within a specified forest.
### [Get-GPOZaurrNetLogon](Get-GPOZaurrNetLogon.md) ### [Get-GPOZaurrNetLogon](Get-GPOZaurrNetLogon.md)
Retrieves information about Group Policy Objects (GPO) stored in the Netlogon and SYSVOL directories. {{ Fill in the Synopsis }}
### [Get-GPOZaurrOrganizationalUnit](Get-GPOZaurrOrganizationalUnit.md) ### [Get-GPOZaurrOrganizationalUnit](Get-GPOZaurrOrganizationalUnit.md)
Retrieves information about Group Policy Objects (GPOs) linked to Organizational Units (OUs) within a specified forest. {{ Fill in the Synopsis }}
### [Get-GPOZaurrOwner](Get-GPOZaurrOwner.md) ### [Get-GPOZaurrOwner](Get-GPOZaurrOwner.md)
Gets owners of GPOs from Active Directory and SYSVOL Gets owners of GPOs from Active Directory and SYSVOL
@@ -89,25 +88,22 @@ Gets owners of GPOs from Active Directory and SYSVOL
Tries to find CPassword in Group Policies or given path and translate it to readable value Tries to find CPassword in Group Policies or given path and translate it to readable value
### [Get-GPOZaurrPermission](Get-GPOZaurrPermission.md) ### [Get-GPOZaurrPermission](Get-GPOZaurrPermission.md)
{{ Fill in the Description }} {{ Fill in the Synopsis }}
### [Get-GPOZaurrPermissionAnalysis](Get-GPOZaurrPermissionAnalysis.md) ### [Get-GPOZaurrPermissionAnalysis](Get-GPOZaurrPermissionAnalysis.md)
Analyzes permissions for Group Policy Objects (GPOs) and administrative groups. {{ Fill in the Synopsis }}
### [Get-GPOZaurrPermissionConsistency](Get-GPOZaurrPermissionConsistency.md) ### [Get-GPOZaurrPermissionConsistency](Get-GPOZaurrPermissionConsistency.md)
Retrieves information about Group Policy Objects (GPOs) and checks permission consistency across domains. {{ Fill in the Synopsis }}
### [Get-GPOZaurrPermissionIssue](Get-GPOZaurrPermissionIssue.md) ### [Get-GPOZaurrPermissionIssue](Get-GPOZaurrPermissionIssue.md)
Detects Group Policy missing Authenticated Users permission while not having higher permissions. Detects Group Policy missing Authenticated Users permission while not having higher permissions.
### [Get-GPOZaurrPermissionRoot](Get-GPOZaurrPermissionRoot.md) ### [Get-GPOZaurrPermissionRoot](Get-GPOZaurrPermissionRoot.md)
Retrieves the root permissions of Group Policy Objects (GPOs) based on specified criteria. {{ Fill in the Synopsis }}
### [Get-GPOZaurrPermissionSummary](Get-GPOZaurrPermissionSummary.md) ### [Get-GPOZaurrPermissionSummary](Get-GPOZaurrPermissionSummary.md)
Retrieves a summary of Group Policy Object (GPO) permissions based on specified criteria. {{ Fill in the Synopsis }}
### [Get-GPOZaurrRedirect](Get-GPOZaurrRedirect.md)
Command to detect if GPOs have correct path in SYSVOL, or someone changed it manually.
### [Get-GPOZaurrSysvolDFSR](Get-GPOZaurrSysvolDFSR.md) ### [Get-GPOZaurrSysvolDFSR](Get-GPOZaurrSysvolDFSR.md)
Gets DFSR information from the SYSVOL DFSR Gets DFSR information from the SYSVOL DFSR
@@ -122,46 +118,46 @@ Get Group Policy WMI filter
Single cmdlet that provides 360 degree overview of Group Policies in Active Directory Forest. Single cmdlet that provides 360 degree overview of Group Policies in Active Directory Forest.
### [Invoke-GPOZaurrContent](Invoke-GPOZaurrContent.md) ### [Invoke-GPOZaurrContent](Invoke-GPOZaurrContent.md)
Invokes GPOZaurrContent function to retrieve Group Policy Objects information. {{ Fill in the Synopsis }}
### [Invoke-GPOZaurrPermission](Invoke-GPOZaurrPermission.md) ### [Invoke-GPOZaurrPermission](Invoke-GPOZaurrPermission.md)
{{ Fill in the Description }} {{ Fill in the Synopsis }}
### [Invoke-GPOZaurrSupport](Invoke-GPOZaurrSupport.md) ### [Invoke-GPOZaurrSupport](Invoke-GPOZaurrSupport.md)
Invokes GPOZaurrSupport function to retrieve Group Policy information. {{ Fill in the Synopsis }}
### [New-GPOZaurrWMI](New-GPOZaurrWMI.md) ### [New-GPOZaurrWMI](New-GPOZaurrWMI.md)
Creates a new WMI filter based on a WMI filter query. {{ Fill in the Synopsis }}
### [Optimize-GPOZaurr](Optimize-GPOZaurr.md) ### [Optimize-GPOZaurr](Optimize-GPOZaurr.md)
Enables or disables user/computer section of group policy based on it's content. Enables or disables user/computer section of group policy based on it's content.
### [Remove-GPOPermission](Remove-GPOPermission.md) ### [Remove-GPOPermission](Remove-GPOPermission.md)
{{ Fill in the Description }} {{ Fill in the Synopsis }}
### [Remove-GPOZaurr](Remove-GPOZaurr.md) ### [Remove-GPOZaurr](Remove-GPOZaurr.md)
Removes Group Policy Objects based on specified criteria. {{ Fill in the Synopsis }}
### [Remove-GPOZaurrBroken](Remove-GPOZaurrBroken.md) ### [Remove-GPOZaurrBroken](Remove-GPOZaurrBroken.md)
Finds and removes broken Group Policies from SYSVOL or AD or both. Finds and removes broken Group Policies from SYSVOL or AD or both.
### [Remove-GPOZaurrDuplicateObject](Remove-GPOZaurrDuplicateObject.md) ### [Remove-GPOZaurrDuplicateObject](Remove-GPOZaurrDuplicateObject.md)
Removes duplicate Group Policy Objects (GPOs) identified by the Get-GPOZaurrDuplicateObject function. {{ Fill in the Synopsis }}
### [Remove-GPOZaurrFolders](Remove-GPOZaurrFolders.md) ### [Remove-GPOZaurrFolders](Remove-GPOZaurrFolders.md)
Removes specified GPOZaurr folders and backs them up to a specified path. {{ Fill in the Synopsis }}
### [Remove-GPOZaurrLegacyFiles](Remove-GPOZaurrLegacyFiles.md) ### [Remove-GPOZaurrLegacyFiles](Remove-GPOZaurrLegacyFiles.md)
Removes legacy Group Policy Objects (GPO) files from specified domains. {{ Fill in the Synopsis }}
### [Remove-GPOZaurrLinkEmptyOU](Remove-GPOZaurrLinkEmptyOU.md) ### [Remove-GPOZaurrLinkEmptyOU](Remove-GPOZaurrLinkEmptyOU.md)
Removes Group Policy Object (GPO) links from empty Organizational Units (OUs) in a specified forest. {{ Fill in the Synopsis }}
### [Remove-GPOZaurrPermission](Remove-GPOZaurrPermission.md) ### [Remove-GPOZaurrPermission](Remove-GPOZaurrPermission.md)
{{ Fill in the Description }} {{ Fill in the Synopsis }}
### [Remove-GPOZaurrWMI](Remove-GPOZaurrWMI.md) ### [Remove-GPOZaurrWMI](Remove-GPOZaurrWMI.md)
Removes Group Policy WMI filters based on specified criteria. {{ Fill in the Synopsis }}
### [Repair-GPOZaurrBrokenLink](Repair-GPOZaurrBrokenLink.md) ### [Repair-GPOZaurrBrokenLink](Repair-GPOZaurrBrokenLink.md)
Removes any link to GPO that no longer exists. Removes any link to GPO that no longer exists.
@@ -170,25 +166,28 @@ Removes any link to GPO that no longer exists.
Sets new owner to each file in NetLogon share. Sets new owner to each file in NetLogon share.
### [Repair-GPOZaurrPermission](Repair-GPOZaurrPermission.md) ### [Repair-GPOZaurrPermission](Repair-GPOZaurrPermission.md)
Repairs permissions for Group Policy Objects (GPOs) based on specified criteria. {{ Fill in the Synopsis }}
### [Repair-GPOZaurrPermissionConsistency](Repair-GPOZaurrPermissionConsistency.md) ### [Repair-GPOZaurrPermissionConsistency](Repair-GPOZaurrPermissionConsistency.md)
Repairs permission consistency for Group Policy Objects (GPOs) in a specified domain or forest. {{ Fill in the Synopsis }}
### [Restore-GPOZaurr](Restore-GPOZaurr.md) ### [Restore-GPOZaurr](Restore-GPOZaurr.md)
Restores Group Policy Objects (GPOs) from a specified backup folder. {{ Fill in the Synopsis }}
### [Save-GPOZaurrFiles](Save-GPOZaurrFiles.md) ### [Save-GPOZaurrFiles](Save-GPOZaurrFiles.md)
Exports GPO XML data to files and saves it to a given path Exports GPO XML data to files and saves it to a given path
### [Set-GPOOwner](Set-GPOOwner.md) ### [Set-GPOOwner](Set-GPOOwner.md)
Used within Invoke-GPOZaurrPermission only. Set new group policy owner. Used within Invoke-GPOZaurrPermission only.
Set new group policy owner.
### [Set-GPOZaurrOwner](Set-GPOZaurrOwner.md) ### [Set-GPOZaurrOwner](Set-GPOZaurrOwner.md)
Sets GPO Owner to Domain Admins or other choosen account Sets GPO Owner to Domain Admins or other choosen account
### [Set-GPOZaurrStatus](Set-GPOZaurrStatus.md) ### [Set-GPOZaurrStatus](Set-GPOZaurrStatus.md)
{{ Fill in the Description }} Enables or disables user/computer section of Group Policy.
### [Skip-GroupPolicy](Skip-GroupPolicy.md) ### [Skip-GroupPolicy](Skip-GroupPolicy.md)
Used within ScriptBlocks only. Allows to exclude Group Policy from being affected by fixes Used within ScriptBlocks only.
Allows to exclude Group Policy from being affected by fixes
+141 -9
View File
@@ -1,16 +1,22 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Remove-GPOPermission # Remove-GPOPermission
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
```powershell
Remove-GPOPermission ```
Remove-GPOPermission [[-Type] <String[]>] [[-IncludePermissionType] <GPPermissionType[]>]
[[-ExcludePermissionType] <GPPermissionType[]>] [[-PermitType] <String>] [[-Principal] <String[]>]
[[-PrincipalType] <String>] [[-ExcludePrincipal] <String[]>] [[-ExcludePrincipalType] <String>]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -18,25 +24,151 @@ Remove-GPOPermission
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
Remove-GPOPermission PS C:\> {{ Add example code here }}
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -ExcludePermissionType
{{ Fill ExcludePermissionType Description }}
```yaml
Type: GPPermissionType[]
Parameter Sets: (All)
Aliases:
Accepted values: None, GpoApply, GpoRead, GpoEdit, GpoEditDeleteModifySecurity, GpoCustom, WmiFilterEdit, WmiFilterFullControl, WmiFilterCustom, StarterGpoRead, StarterGpoEdit, StarterGpoFullControl, StarterGpoCustom, SomCreateWmiFilter, SomWmiFilterFullControl, SomCreateGpo, SomCreateStarterGpo, SomLogging, SomPlanning, SomLink
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludePrincipal
{{ Fill ExcludePrincipal Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 6
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludePrincipalType
{{ Fill ExcludePrincipalType Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Accepted values: DistinguishedName, Name, Sid
Required: False
Position: 7
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludePermissionType
{{ Fill IncludePermissionType Description }}
```yaml
Type: GPPermissionType[]
Parameter Sets: (All)
Aliases:
Accepted values: None, GpoApply, GpoRead, GpoEdit, GpoEditDeleteModifySecurity, GpoCustom, WmiFilterEdit, WmiFilterFullControl, WmiFilterCustom, StarterGpoRead, StarterGpoEdit, StarterGpoFullControl, StarterGpoCustom, SomCreateWmiFilter, SomWmiFilterFullControl, SomCreateGpo, SomCreateStarterGpo, SomLogging, SomPlanning, SomLink
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -PermitType
{{ Fill PermitType Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Accepted values: Allow, Deny, All
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Principal
{{ Fill Principal Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -PrincipalType
{{ Fill PrincipalType Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Accepted values: DistinguishedName, Name, Sid
Required: False
Position: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Type
{{ Fill Type Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Accepted values: Unknown, NotWellKnown, NotWellKnownAdministrative, Administrative, NotAdministrative, All
Required: False
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters ### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+94 -76
View File
@@ -1,214 +1,233 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Remove-GPOZaurr # Remove-GPOZaurr
## SYNOPSIS ## SYNOPSIS
Removes Group Policy Objects based on specified criteria. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Remove-GPOZaurr [-Type] <string[]> [[-ExcludeGroupPolicies] <scriptblock>] [-LimitProcessing <int>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-GPOPath <string[]>] [-BackupPath <string>] [-BackupDated] [-RequireDays <int>] [-WhatIf] [-Confirm] [<CommonParameters>] Remove-GPOZaurr [[-ExcludeGroupPolicies] <ScriptBlock>] [-Type] <String[]> [-LimitProcessing <Int32>]
[-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-ExtendedForestInformation <IDictionary>] [-GPOPath <String[]>] [-BackupPath <String>] [-BackupDated]
[-RequireDays <Int32>] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
The Remove-GPOZaurr function removes Group Policy Objects (GPOs) based on the specified criteria. It allows for filtering by various parameters such as GPO type, forest, domains, and more. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Remove-GPOZaurr -Type 'Empty' -Forest 'Contoso' -IncludeDomains 'Domain1', 'Domain2' -BackupPath 'C:\GPOBackups' -BackupDated -RequireDays 7 PS C:\> {{ Add example code here }}
Removes all empty GPOs from the 'Contoso' forest for 'Domain1' and 'Domain2', backs them up to 'C:\GPOBackups' with dated folders, and requires removal after 7 days.
```
### EXAMPLE 2
```powershell
PS > Remove-GPOZaurr -Type 'Disabled' -Forest 'Fabrikam' -ExcludeDomains 'Domain3' -LimitProcessing 10
Removes all disabled GPOs from the 'Fabrikam' forest excluding 'Domain3' and processes only the first 10 GPOs.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -BackupDated ### -BackupDated
Indicates whether the backup should be dated. {{ Fill BackupDated Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -BackupPath ### -BackupPath
Specifies the path for backing up GPOs before removal. {{ Fill BackupPath Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -ExcludeDomains
Specifies the domains to exclude from GPO removal. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludeGroupPolicies ### -ExcludeGroupPolicies
Specifies the Group Policies to exclude from removal. {{ Fill ExcludeGroupPolicies Description }}
```yaml ```yaml
Type: ScriptBlock Type: ScriptBlock
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional information about the forest. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest to target for GPO removal. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -GPOPath ### -GPOPath
Specifies the path to the GPOs to be removed. {{ Fill GPOPath Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies the domains to include for GPO removal. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -LimitProcessing ### -LimitProcessing
Specifies the maximum number of GPOs to process before stopping. {{ Fill LimitProcessing Description }}
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: 0 Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -RequireDays ### -RequireDays
Specifies the number of days before GPO removal is required. {{ Fill RequireDays Description }}
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: 0 Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Type ### -Type
Specifies the type of GPOs to target for removal. Valid values are 'Empty', 'Unlinked', 'Disabled', 'NoApplyPermission'. {{ Fill Type Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: Empty, Unlinked, Disabled, NoApplyPermission Accepted values: Empty, Unlinked, Disabled, NoApplyPermission
Required: True Required: True
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -216,12 +235,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+103 -79
View File
@@ -1,21 +1,26 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Remove-GPOZaurrBroken # Remove-GPOZaurrBroken
## SYNOPSIS ## SYNOPSIS
Finds and removes broken Group Policies from SYSVOL or AD or both. Finds and removes broken Group Policies from SYSVOL or AD or both.
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Remove-GPOZaurrBroken [-Type] <string[]> [-BackupPath <string>] [-BackupDated] [-LimitProcessing <int>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>] Remove-GPOZaurrBroken [-Type] <String[]> [-BackupPath <String>] [-BackupDated] [-LimitProcessing <Int32>]
[-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-ExtendedForestInformation <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
Finds and removes broken Group Policies from SYSVOL or AD or both. Assesment is based on Get-GPOZaurrBroken and there are 3 supported types: Finds and removes broken Group Policies from SYSVOL or AD or both.
Assesment is based on Get-GPOZaurrBroken and there are 3 supported types:
- AD - meaning GPOs which have no SYSVOL content will be deleted from AD - AD - meaning GPOs which have no SYSVOL content will be deleted from AD
- SYSVOL - meaning GPOs which have no AD content will be deleted from SYSVOL - SYSVOL - meaning GPOs which have no AD content will be deleted from SYSVOL
- ObjectClass - meaning GPOs which have ObjectClass category of Container rather than groupPolicyContainer will be deleted from AD & SYSVOL - ObjectClass - meaning GPOs which have ObjectClass category of Container rather than groupPolicyContainer will be deleted from AD & SYSVOL
@@ -23,39 +28,36 @@ Finds and removes broken Group Policies from SYSVOL or AD or both. Assesment is
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell
PS > Remove-GPOZaurrBroken -Verbose -WhatIf -Type AD, SYSVOL
``` ```
Remove-GPOZaurrBroken -Verbose -WhatIf -Type AD, SYSVOL
```
### EXAMPLE 2 ### EXAMPLE 2
```powershell
PS > Remove-GPOZaurrBroken -Verbose -WhatIf -Type AD, SYSVOL -IncludeDomains 'ad.evotec.pl' -LimitProcessing 2
``` ```
Remove-GPOZaurrBroken -Verbose -WhatIf -Type AD, SYSVOL -IncludeDomains 'ad.evotec.pl' -LimitProcessing 2
```
### EXAMPLE 3 ### EXAMPLE 3
```powershell
PS > Remove-GPOZaurrBroken -Verbose -IncludeDomains 'ad.evotec.xyz' -BackupPath $Env:UserProfile\Desktop\MyBackup1 -WhatIf -Type AD, SYSVOL
``` ```
Remove-GPOZaurrBroken -Verbose -IncludeDomains 'ad.evotec.xyz' -BackupPath $Env:UserProfile\Desktop\MyBackup1 -WhatIf -Type AD, SYSVOL
```
## PARAMETERS ## PARAMETERS
### -BackupDated ### -Type
Forces backup to be created within folder that has date in it Choose one or more types to delete.
Options are AD, ObjectClass, SYSVOL
```yaml ```yaml
Type: SwitchParameter Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: True
Position: named Position: 1
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -BackupPath ### -BackupPath
@@ -63,47 +65,45 @@ Path to optional backup of SYSVOL content before deletion
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -BackupDated
Exclude domain from search, by default whole forest is scanned Forces backup to be created within folder that has date in it
```yaml ```yaml
Type: String[] Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -LimitProcessing
Ability to provide Forest Information from another command to speed up processing Allows to specify maximum number of items that will be fixed in a single run.
It doesn't affect amount of GPOs processed
```yaml ```yaml
Type: IDictionary Type: Int32
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: 2147483647
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
@@ -111,15 +111,29 @@ Target different Forest, by default current forest is used
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
@@ -127,47 +141,60 @@ Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -LimitProcessing ### -ExtendedForestInformation
Allows to specify maximum number of items that will be fixed in a single run. It doesn't affect amount of GPOs processed Ability to provide Forest Information from another command to speed up processing
```yaml ```yaml
Type: Int32 Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: 2147483647
Accept pipeline input: False
Accept wildcard characters: True
```
### -Type
Choose one or more types to delete. Options are AD, ObjectClass, SYSVOL
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values: SYSVOL, AD, ObjectClass
Required: True
Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -175,12 +202,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+63 -35
View File
@@ -1,112 +1,141 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Remove-GPOZaurrDuplicateObject # Remove-GPOZaurrDuplicateObject
## SYNOPSIS ## SYNOPSIS
Removes duplicate Group Policy Objects (GPOs) identified by the Get-GPOZaurrDuplicateObject function. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Remove-GPOZaurrDuplicateObject [[-LimitProcessing] <int>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>] Remove-GPOZaurrDuplicateObject [[-LimitProcessing] <Int32>] [[-Forest] <String>] [[-ExcludeDomains] <String[]>]
[[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>] [-WhatIf] [-Confirm]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function removes duplicate GPOs based on the criteria provided. It retrieves duplicate GPO objects using Get-GPOZaurrDuplicateObject and then attempts to remove them from the Active Directory. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Remove-GPOZaurrDuplicateObject -Forest "contoso.com" -IncludeDomains "domain1.com", "domain2.com" -ExcludeDomains "domain3.com" -LimitProcessing 5 PS C:\> {{ Add example code here }}
``` ```
Description: {{ Add example description here }}
Removes duplicate GPOs from the forest "contoso.com" for domains "domain1.com" and "domain2.com", excluding "domain3.com", processing only the first 5 duplicates.
## PARAMETERS ## PARAMETERS
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domains to exclude from the duplicate GPO removal process. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional information about the forest. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest where the duplicate GPOs are located. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domains to include in the duplicate GPO removal process. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -LimitProcessing ### -LimitProcessing
Specifies the maximum number of duplicate GPOs to process. Default is set to [int32]::MaxValue. {{ Fill LimitProcessing Description }}
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: 2147483647 Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -114,12 +143,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+84 -57
View File
@@ -1,191 +1,219 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Remove-GPOZaurrFolders # Remove-GPOZaurrFolders
## SYNOPSIS ## SYNOPSIS
Removes specified GPOZaurr folders and backs them up to a specified path. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Remove-GPOZaurrFolders [[-BackupPath] <string>] [[-Type] <string[]>] [-FolderType] <string> [[-FolderName] <string[]>] [[-LimitProcessing] <int>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-BackupDated] [-WhatIf] [-Confirm] [<CommonParameters>] Remove-GPOZaurrFolders [[-BackupPath] <String>] [-BackupDated] [[-Type] <String[]>] [-FolderType] <String>
[[-FolderName] <String[]>] [[-LimitProcessing] <Int32>] [[-Forest] <String>] [[-ExcludeDomains] <String[]>]
[[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>] [-WhatIf] [-Confirm]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function removes specified GPOZaurr folders based on the provided criteria and backs them up to a specified path. It allows for filtering by folder type, domain, and other parameters. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Remove-GPOZaurrFolders -BackupPath "C:\Backups" -BackupDated -Type 'All' -FolderType 'NTFRS' -FolderName "Folder1" -LimitProcessing 10 -Forest "ExampleForest" -ExcludeDomains "Domain1" -IncludeDomains "Domain2" -ExtendedForestInformation $info PS C:\> {{ Add example code here }}
Removes GPOZaurr folders of type 'NTFRS' named "Folder1" from all domains in the forest "ExampleForest", backs them up to "C:\Backups" with a timestamp, and limits processing to 10 folders.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -BackupDated ### -BackupDated
Indicates whether the backup path should include a timestamp. {{ Fill BackupDated Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -BackupPath ### -BackupPath
The path where the GPOZaurr folders will be backed up. {{ Fill BackupPath Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -ExcludeDomains
Specifies domains to exclude from processing. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 6 Position: 6
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional forest information. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 8 Position: 8
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -FolderName ### -FolderName
Specifies the name of the folder to remove. {{ Fill FolderName Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -FolderType ### -FolderType
Specifies the type of folders to remove. Options are 'NTFRS' or 'Empty'. {{ Fill FolderType Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: NTFRS, Empty Accepted values: NTFRS, Empty
Required: True Required: True
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest to target. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 5 Position: 5
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies domains to include in processing. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 7 Position: 7
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -LimitProcessing ### -LimitProcessing
Limits the number of folders to process. {{ Fill LimitProcessing Description }}
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: 2147483647 Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Type ### -Type
Specifies the type of folders to remove. Options are 'All', 'Netlogon', or 'Sysvol'. {{ Fill Type Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: All, Netlogon, Sysvol Accepted values: All, Netlogon, Sysvol
Required: False Required: False
Position: 1 Position: 1
Default value: All Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -193,12 +221,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+73 -46
View File
@@ -1,143 +1,171 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Remove-GPOZaurrLegacyFiles # Remove-GPOZaurrLegacyFiles
## SYNOPSIS ## SYNOPSIS
Removes legacy Group Policy Objects (GPO) files from specified domains. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Remove-GPOZaurrLegacyFiles [[-BackupPath] <string>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-LimitProcessing] <int>] [-BackupDated] [-RemoveEmptyFolders] [-WhatIf] [-Confirm] [<CommonParameters>] Remove-GPOZaurrLegacyFiles [[-BackupPath] <String>] [-BackupDated] [-RemoveEmptyFolders] [[-Forest] <String>]
[[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>] [[-LimitProcessing] <Int32>] [-WhatIf]
[-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
The Remove-GPOZaurrLegacyFiles function removes legacy GPO files from specified domains. It can back up the files before removal and optionally remove empty folders. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Remove-GPOZaurrLegacyFiles -BackupPath "C:\GPOBackups" -BackupDated -RemoveEmptyFolders -Forest "Contoso" -IncludeDomains "Domain1", "Domain2" -ExcludeDomains "Domain3" -LimitProcessing 100 PS C:\> {{ Add example code here }}
Removes legacy GPO files from the "Contoso" forest for "Domain1" and "Domain2", excluding "Domain3". Backs up files to "C:\GPOBackups" with timestamps and removes empty folders after deletion.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -BackupDated ### -BackupDated
Indicates whether backup files should be timestamped with the current date and time. {{ Fill BackupDated Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -BackupPath ### -BackupPath
Specifies the path where backup files will be stored. {{ Fill BackupPath Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domains to exclude from processing. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest where the GPO files are located. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domains to include for processing. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -LimitProcessing ### -LimitProcessing
Specifies the maximum number of GPO files to process. {{ Fill LimitProcessing Description }}
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: 2147483647 Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -RemoveEmptyFolders ### -RemoveEmptyFolders
Indicates whether empty folders should be removed after GPO files are deleted. {{ Fill RemoveEmptyFolders Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -145,12 +173,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+66 -38
View File
@@ -1,127 +1,156 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Remove-GPOZaurrLinkEmptyOU # Remove-GPOZaurrLinkEmptyOU
## SYNOPSIS ## SYNOPSIS
Removes Group Policy Object (GPO) links from empty Organizational Units (OUs) in a specified forest. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Remove-GPOZaurrLinkEmptyOU [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-ExcludeOrganizationalUnit] <string[]>] [[-LimitProcessing] <int>] [-WhatIf] [-Confirm] [<CommonParameters>] Remove-GPOZaurrLinkEmptyOU [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>]
[[-ExtendedForestInformation] <IDictionary>] [[-ExcludeOrganizationalUnit] <String[]>]
[[-LimitProcessing] <Int32>] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function removes GPO links from OUs that are empty and meet specified criteria. It processes OUs within the specified forest based on inclusion and exclusion rules. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Remove-GPOZaurrLinkEmptyOU -Forest "ContosoForest" -IncludeDomains @("domain1", "domain2") -ExcludeDomains @("domain3") -ExtendedForestInformation $info -ExcludeOrganizationalUnit @("OU=TestOU,DC=contoso,DC=com") -LimitProcessing 100 PS C:\> {{ Add example code here }}
Removes GPO links from empty OUs in the "ContosoForest" forest, including domains "domain1" and "domain2" but excluding "domain3". Additional forest information is provided, and processing is limited to 100 OUs.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domains to exclude from processing. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludeOrganizationalUnit ### -ExcludeOrganizationalUnit
Specifies an array of OUs to exclude from processing. {{ Fill ExcludeOrganizationalUnit Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional information about the forest. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the name of the forest to target for processing. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domains to include for processing. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -LimitProcessing ### -LimitProcessing
Specifies the maximum number of OUs to process. {{ Fill LimitProcessing Description }}
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 5 Position: 5
Default value: 2147483647 Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -129,12 +158,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+280 -9
View File
@@ -1,16 +1,42 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Remove-GPOZaurrPermission # Remove-GPOZaurrPermission
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
```powershell
Remove-GPOZaurrPermission ### Global (Default)
```
Remove-GPOZaurrPermission [-Principal <String[]>] [-PrincipalType <String>] [-Type <String[]>]
[-IncludePermissionType <GPPermissionType[]>] [-ExcludePermissionType <GPPermissionType[]>] [-SkipWellKnown]
[-SkipAdministrative] [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-ExtendedForestInformation <IDictionary>] [-LimitProcessing <Int32>] [-WhatIf] [-Confirm]
[<CommonParameters>]
```
### GPOName
```
Remove-GPOZaurrPermission -GPOName <String> [-Principal <String[]>] [-PrincipalType <String>]
[-Type <String[]>] [-IncludePermissionType <GPPermissionType[]>] [-ExcludePermissionType <GPPermissionType[]>]
[-SkipWellKnown] [-SkipAdministrative] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-LimitProcessing <Int32>] [-WhatIf]
[-Confirm] [<CommonParameters>]
```
### GPOGUID
```
Remove-GPOZaurrPermission -GPOGuid <String> [-Principal <String[]>] [-PrincipalType <String>]
[-Type <String[]>] [-IncludePermissionType <GPPermissionType[]>] [-ExcludePermissionType <GPPermissionType[]>]
[-SkipWellKnown] [-SkipAdministrative] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-LimitProcessing <Int32>] [-WhatIf]
[-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -18,25 +44,270 @@ Remove-GPOZaurrPermission
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
Remove-GPOZaurrPermission PS C:\> {{ Add example code here }}
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains
{{ Fill ExcludeDomains Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludePermissionType
{{ Fill ExcludePermissionType Description }}
```yaml
Type: GPPermissionType[]
Parameter Sets: (All)
Aliases:
Accepted values: None, GpoApply, GpoRead, GpoEdit, GpoEditDeleteModifySecurity, GpoCustom, WmiFilterEdit, WmiFilterFullControl, WmiFilterCustom, StarterGpoRead, StarterGpoEdit, StarterGpoFullControl, StarterGpoCustom, SomCreateWmiFilter, SomWmiFilterFullControl, SomCreateGpo, SomCreateStarterGpo, SomLogging, SomPlanning, SomLink
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }}
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Forest
{{ Fill Forest Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases: ForestName
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -GPOGuid
{{ Fill GPOGuid Description }}
```yaml
Type: String
Parameter Sets: GPOGUID
Aliases: GUID, GPOID
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -GPOName
{{ Fill GPOName Description }}
```yaml
Type: String
Parameter Sets: GPOName
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludeDomains
{{ Fill IncludeDomains Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Domain, Domains
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludePermissionType
{{ Fill IncludePermissionType Description }}
```yaml
Type: GPPermissionType[]
Parameter Sets: (All)
Aliases: PermissionType
Accepted values: None, GpoApply, GpoRead, GpoEdit, GpoEditDeleteModifySecurity, GpoCustom, WmiFilterEdit, WmiFilterFullControl, WmiFilterCustom, StarterGpoRead, StarterGpoEdit, StarterGpoFullControl, StarterGpoCustom, SomCreateWmiFilter, SomWmiFilterFullControl, SomCreateGpo, SomCreateStarterGpo, SomLogging, SomPlanning, SomLink
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -LimitProcessing
{{ Fill LimitProcessing Description }}
```yaml
Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Principal
{{ Fill Principal Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -PrincipalType
{{ Fill PrincipalType Description }}
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Accepted values: DistinguishedName, Name, NetbiosName, Sid
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -SkipAdministrative
{{ Fill SkipAdministrative Description }}
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -SkipWellKnown
{{ Fill SkipWellKnown Description }}
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Type
{{ Fill Type Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Accepted values: Unknown, NotAdministrative, Default
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters ### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+65 -48
View File
@@ -1,138 +1,156 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Remove-GPOZaurrWMI # Remove-GPOZaurrWMI
## SYNOPSIS ## SYNOPSIS
Removes Group Policy WMI filters based on specified criteria. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Remove-GPOZaurrWMI [[-Guid] <guid[]>] [[-Name] <string[]>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>] Remove-GPOZaurrWMI [[-Guid] <Guid[]>] [[-Name] <String[]>] [[-Forest] <String>] [[-ExcludeDomains] <String[]>]
[[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>] [-WhatIf] [-Confirm]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
This function removes WMI filters based on the provided GUIDs or names within the specified forest or domains. It retrieves WMI filters associated with the GPOs and removes them. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Remove-GPOZaurrWMI -Guid "12345678-1234-1234-1234-123456789012" PS C:\> {{ Add example code here }}
``` ```
Description {{ Add example description here }}
-----------
Removes the WMI filter with the specified GUID.
### EXAMPLE 2
```powershell
PS > Remove-GPOZaurrWMI -Name "TestWMIFilter"
```
Description
-----------
Removes the WMI filter with the specified name.
## PARAMETERS ## PARAMETERS
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domains to exclude from the removal process. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional information about the forest. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 5 Position: 5
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest name where the WMI filters are located. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Guid ### -Guid
Specifies an array of GUIDs of the WMI filters to be removed. {{ Fill Guid Description }}
```yaml ```yaml
Type: Guid[] Type: Guid[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domains to include in the removal process. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Name ### -Name
Specifies an array of names of the WMI filters to be removed. {{ Fill Name Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -140,12 +158,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+89 -62
View File
@@ -1,84 +1,69 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Repair-GPOZaurrBrokenLink # Repair-GPOZaurrBrokenLink
## SYNOPSIS ## SYNOPSIS
Removes any link to GPO that no longer exists. Removes any link to GPO that no longer exists.
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Repair-GPOZaurrBrokenLink [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-LimitProcessing] <int>] [-WhatIf] [-Confirm] [<CommonParameters>] Repair-GPOZaurrBrokenLink [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>]
[[-ExtendedForestInformation] <IDictionary>] [[-LimitProcessing] <Int32>] [-WhatIf] [-Confirm]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
Removes any link to GPO that no longer exists. It scans all site, organizational unit or domain root making sure every single link that may be linking to GPO that doesn't exists anymore is gone. Removes any link to GPO that no longer exists.
It scans all site, organizational unit or domain root making sure every single link that may be linking to GPO that doesn't exists anymore is gone.
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell
PS > Repair-GPOZaurrBrokenLink -Verbose -LimitProcessing 1 -WhatIf
``` ```
Repair-GPOZaurrBrokenLink -Verbose -LimitProcessing 1 -WhatIf
```
### EXAMPLE 2 ### EXAMPLE 2
```powershell
PS > Repair-GPOZaurrBrokenLink -Verbose -IncludeDomains ad.evotec.pl -LimitProcessing 1 -WhatIf
``` ```
Repair-GPOZaurrBrokenLink -Verbose -IncludeDomains ad.evotec.pl -LimitProcessing 1 -WhatIf
```
## PARAMETERS ## PARAMETERS
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Forest ### -Forest
Target different Forest, by default current forest is used Target different Forest, by default current forest is used
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 0 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
@@ -86,31 +71,76 @@ Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 2 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -LimitProcessing ### -ExtendedForestInformation
Allows to specify maximum number of items that will be fixed in a single run. It doesn't affect amount of GPOs processed Ability to provide Forest Information from another command to speed up processing
```yaml ```yaml
Type: Int32 Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -LimitProcessing
Allows to specify maximum number of items that will be fixed in a single run.
It doesn't affect amount of GPOs processed
```yaml
Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: 5
Default value: 0 Default value: 0
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -118,12 +148,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+101 -74
View File
@@ -1,17 +1,21 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Repair-GPOZaurrNetLogonOwner # Repair-GPOZaurrNetLogonOwner
## SYNOPSIS ## SYNOPSIS
Sets new owner to each file in NetLogon share. Sets new owner to each file in NetLogon share.
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Repair-GPOZaurrNetLogonOwner [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-Principal] <string>] [[-LimitProcessing] <int>] [-WhatIf] [-Confirm] [<CommonParameters>] Repair-GPOZaurrNetLogonOwner [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>]
[[-ExtendedForestInformation] <IDictionary>] [[-Principal] <String>] [[-LimitProcessing] <Int32>] [-WhatIf]
[-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -20,59 +24,40 @@ Sets new owner to each file in NetLogon share.
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell
PS > Repair-GPOZaurrNetLogonOwner -WhatIf -Verbose -IncludeDomains ad.evotec.pl
``` ```
Repair-GPOZaurrNetLogonOwner -WhatIf -Verbose -IncludeDomains ad.evotec.pl
```
## PARAMETERS ## PARAMETERS
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Forest ### -Forest
Target different Forest, by default current forest is used Target different Forest, by default current forest is used
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 0 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
@@ -80,47 +65,92 @@ Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 2 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -LimitProcessing ### -ExtendedForestInformation
Allows to specify maximum number of items that will be fixed in a single run. It doesn't affect amount of GPOs processed Ability to provide Forest Information from another command to speed up processing
```yaml ```yaml
Type: Int32 Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False
Position: 5
Default value: 2147483647
Accept pipeline input: False
Accept wildcard characters: True
```
### -Principal
Provide named owner. If not provided default S-1-5-32-544 is used.
```yaml
Type: String
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Principal
Provide named owner.
If not provided default S-1-5-32-544 is used.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 5
Default value: S-1-5-32-544 Default value: S-1-5-32-544
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -LimitProcessing
Allows to specify maximum number of items that will be fixed in a single run.
It doesn't affect amount of GPOs processed
```yaml
Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: 6
Default value: 2147483647
Accept pipeline input: False
Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -128,12 +158,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+67 -38
View File
@@ -1,127 +1,157 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Repair-GPOZaurrPermission # Repair-GPOZaurrPermission
## SYNOPSIS ## SYNOPSIS
Repairs permissions for Group Policy Objects (GPOs) based on specified criteria. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Repair-GPOZaurrPermission [-Type] <string[]> [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-LimitProcessing] <int>] [-WhatIf] [-Confirm] [<CommonParameters>] Repair-GPOZaurrPermission [-Type] <String[]> [[-Forest] <String>] [[-ExcludeDomains] <String[]>]
[[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>] [[-LimitProcessing] <Int32>]
[-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
The Repair-GPOZaurrPermission function repairs permissions for GPOs based on the specified criteria. It analyzes the permissions of GPOs and adds necessary permissions if they are missing. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Repair-GPOZaurrPermission -Type 'All' -Forest 'ContosoForest' -IncludeDomains @('Domain1', 'Domain2') -ExcludeDomains @('Domain3') -ExtendedForestInformation $info -LimitProcessing 100 PS C:\> {{ Add example code here }}
Repairs permissions for all types of users in the 'ContosoForest' forest, including only 'Domain1' and 'Domain2' while excluding 'Domain3', with extended forest information and processing a maximum of 100 GPOs.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domains to exclude from the analysis. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional information about the forest. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest name to analyze GPO permissions. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domains to include in the analysis. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -LimitProcessing ### -LimitProcessing
Specifies the maximum number of GPOs to process. {{ Fill LimitProcessing Description }}
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 5 Position: 5
Default value: 2147483647 Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Type ### -Type
Specifies the type of permissions to repair. Valid values are 'AuthenticatedUsers', 'Unknown', 'System', 'Administrative', and 'All'. {{ Fill Type Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values: AuthenticatedUsers, Unknown, System, Administrative, All Accepted values: AuthenticatedUsers, Unknown, System, Administrative, All
Required: True Required: True
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -129,12 +159,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+82 -57
View File
@@ -1,160 +1,186 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Repair-GPOZaurrPermissionConsistency # Repair-GPOZaurrPermissionConsistency
## SYNOPSIS ## SYNOPSIS
Repairs permission consistency for Group Policy Objects (GPOs) in a specified domain or forest. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### Default (Default) ### Default (Default)
```powershell ```
Repair-GPOZaurrPermissionConsistency [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-LimitProcessing <int>] [-WhatIf] [-Confirm] [<CommonParameters>] Repair-GPOZaurrPermissionConsistency [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-LimitProcessing <Int32>] [-WhatIf]
[-Confirm] [<CommonParameters>]
``` ```
### GPOName ### GPOName
```powershell ```
Repair-GPOZaurrPermissionConsistency [-GPOName <string>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-LimitProcessing <int>] [-WhatIf] [-Confirm] [<CommonParameters>] Repair-GPOZaurrPermissionConsistency [-GPOName <String>] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-LimitProcessing <Int32>] [-WhatIf]
[-Confirm] [<CommonParameters>]
``` ```
### GPOGUID ### GPOGUID
```powershell ```
Repair-GPOZaurrPermissionConsistency [-GPOGuid <string>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-LimitProcessing <int>] [-WhatIf] [-Confirm] [<CommonParameters>] Repair-GPOZaurrPermissionConsistency [-GPOGuid <String>] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-LimitProcessing <Int32>] [-WhatIf]
[-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
The Repair-GPOZaurrPermissionConsistency function repairs permission consistency for GPOs in a specified domain or forest. It checks for inconsistencies in GPO permissions and attempts to make them consistent. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Repair-GPOZaurrPermissionConsistency -GPOName "ExampleGPO" -Forest "example.com" PS C:\> {{ Add example code here }}
Repairs permission consistency for the GPO named "ExampleGPO" in the "example.com" forest.
```
### EXAMPLE 2
```powershell
PS > Repair-GPOZaurrPermissionConsistency -GPOGuid "12345678-1234-1234-1234-1234567890AB" -ExcludeDomains @("domain1", "domain2") -LimitProcessing 5
Repairs permission consistency for the GPO with the specified GUID, excluding domains "domain1" and "domain2", and processing a maximum of 5 GPOs.
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains ### -ExcludeDomains
Specifies an array of domains to exclude from the repair process. {{ Fill ExcludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Default, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
Specifies additional information about the forest. {{ Fill ExtendedForestInformation Description }}
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: Default, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Forest ### -Forest
Specifies the forest where the GPOs are located. {{ Fill Forest Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: Default, GPOName, GPOGUID Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -GPOGuid ### -GPOGuid
Specifies the GUID of the GPO to repair. {{ Fill GPOGuid Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: GPOGUID Parameter Sets: GPOGUID
Aliases: GUID, GPOID Aliases: GUID, GPOID
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -GPOName ### -GPOName
Specifies the name of the GPO to repair. {{ Fill GPOName Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: GPOName Parameter Sets: GPOName
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
Specifies an array of domains to include in the repair process. {{ Fill IncludeDomains Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Default, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -LimitProcessing ### -LimitProcessing
Specifies the maximum number of GPOs to process. {{ Fill LimitProcessing Description }}
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: Default, GPOName, GPOGUID Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: 2147483647 Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -162,12 +188,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+32 -40
View File
@@ -1,116 +1,109 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Restore-GPOZaurr # Restore-GPOZaurr
## SYNOPSIS ## SYNOPSIS
Restores Group Policy Objects (GPOs) from a specified backup folder. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Restore-GPOZaurr [-BackupFolder] <string> [[-DisplayName] <string>] [[-NewDisplayName] <string>] [[-Domain] <string>] [-SkipBackupSummary] [<CommonParameters>] Restore-GPOZaurr [-BackupFolder] <String> [[-DisplayName] <String>] [[-NewDisplayName] <String>]
[[-Domain] <String>] [-SkipBackupSummary] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
Restores Group Policy Objects (GPOs) from a specified backup folder. This function allows restoring GPOs with the option to provide a new display name for the GPO. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### Example 1
```powershell ```powershell
PS > Restore-GPOZaurr -BackupFolder 'C:\GPOBackups' -DisplayName 'TestGPO' PS C:\> {{ Add example code here }}
```
### EXAMPLE 2
```powershell
PS > Restore-GPOZaurr -BackupFolder 'C:\GPOBackups' -DisplayName 'TestGPO' -NewDisplayName 'NewTestGPO' -Domain 'example.com'
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -BackupFolder ### -BackupFolder
The path to the folder containing the GPO backups. {{ Fill BackupFolder Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: True Required: True
Position: 0 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -DisplayName ### -DisplayName
The display name of the GPO to be restored. {{ Fill DisplayName Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Name Aliases: Name
Possible values:
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Domain ### -Domain
(Optional) The domain name where the GPO should be restored. {{ Fill Domain Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 3 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -NewDisplayName ### -NewDisplayName
(Optional) The new display name for the restored GPO. {{ Fill NewDisplayName Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -SkipBackupSummary ### -SkipBackupSummary
(Switch) Skip displaying the backup summary information. {{ Fill SkipBackupSummary Description }}
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -118,12 +111,11 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None` ### None
## OUTPUTS ## OUTPUTS
- `None` ### System.Object
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+70 -77
View File
@@ -1,17 +1,20 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Save-GPOZaurrFiles # Save-GPOZaurrFiles
## SYNOPSIS ## SYNOPSIS
Exports GPO XML data to files and saves it to a given path Exports GPO XML data to files and saves it to a given path
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Save-GPOZaurrFiles [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-GPOPath] <string[]>] [-DeleteExisting] [<CommonParameters>] Save-GPOZaurrFiles [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>]
[[-ExtendedForestInformation] <IDictionary>] [[-GPOPath] <String[]>] [-DeleteExisting] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -20,27 +23,25 @@ Exports GPO XML data to files and saves it to a given path
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell
PS > Save-GPOZaurrFiles -GPOPath 'C:\Support\GitHub\GpoZaurr\Ignore\GPOExportEvotec' -DeleteExisting -Verbose
``` ```
Save-GPOZaurrFiles -GPOPath 'C:\Support\GitHub\GpoZaurr\Ignore\GPOExportEvotec' -DeleteExisting -Verbose
```
## PARAMETERS ## PARAMETERS
### -DeleteExisting ### -Forest
Delete existing files before saving new ones Target different Forest, by default current forest is used
```yaml ```yaml
Type: SwitchParameter Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases: ForestName
Possible values:
Required: False Required: False
Position: named Position: 1
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -ExcludeDomains
@@ -48,63 +49,14 @@ Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: __AllParameterSets
Aliases: ForestName
Possible values:
Required: False
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -GPOPath
Path where to save XML files from GPOReport
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
@@ -112,15 +64,59 @@ Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: 2 Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -GPOPath
Path where to save XML files from GPOReport
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -DeleteExisting
Delete existing files before saving new ones
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -128,12 +124,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+37 -36
View File
@@ -1,67 +1,71 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Set-GPOOwner # Set-GPOOwner
## SYNOPSIS ## SYNOPSIS
Used within Invoke-GPOZaurrPermission only. Set new group policy owner. Used within Invoke-GPOZaurrPermission only.
Set new group policy owner.
## SYNTAX ## SYNTAX
### __AllParameterSets
```powershell ```
Set-GPOOwner [[-Type] <string>] [[-Principal] <string>] [<CommonParameters>] Set-GPOOwner [[-Type] <String>] [[-Principal] <String>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
Used within Invoke-GPOZaurrPermission only. Set new group policy owner. Used within Invoke-GPOZaurrPermission only.
Set new group policy owner.
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell ```
PS > Invoke-GPOZaurrPermission -Verbose -SearchBase 'OU=Computers,OU=Production,DC=ad,DC=evotec,DC=xyz' { Invoke-GPOZaurrPermission -Verbose -SearchBase 'OU=Computers,OU=Production,DC=ad,DC=evotec,DC=xyz' {
Set-GPOOwner -Type Administrative ```
Set-GPOOwner -Type Administrative
Remove-GPOPermission -Type NotAdministrative, NotWellKnownAdministrative -IncludePermissionType GpoEdit, GpoEditDeleteModifySecurity Remove-GPOPermission -Type NotAdministrative, NotWellKnownAdministrative -IncludePermissionType GpoEdit, GpoEditDeleteModifySecurity
Add-GPOPermission -Type Administrative -IncludePermissionType GpoEditDeleteModifySecurity Add-GPOPermission -Type Administrative -IncludePermissionType GpoEditDeleteModifySecurity
Add-GPOPermission -Type WellKnownAdministrative -IncludePermissionType GpoEditDeleteModifySecurity Add-GPOPermission -Type WellKnownAdministrative -IncludePermissionType GpoEditDeleteModifySecurity
} -WhatIf } -WhatIf
```
## PARAMETERS ## PARAMETERS
### -Type
Choose Owner Type.
When chosing Administrative Type, owner will be set to Domain Admins for current GPO domain.
When Default is set Owner will be set to Principal given in another parameter.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 1
Default value: Default
Accept pipeline input: False
Accept wildcard characters: False
```
### -Principal ### -Principal
Choose Owner Name to set for Group Policy Choose Owner Name to set for Group Policy
```yaml ```yaml
Type: String Type: String
Parameter Sets: __AllParameterSets Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -Type
Choose Owner Type. When chosing Administrative Type, owner will be set to Domain Admins for current GPO domain. When Default is set Owner will be set to Principal given in another parameter.
```yaml
Type: String
Parameter Sets: __AllParameterSets
Aliases:
Possible values: Administrative, Default
Required: False
Position: 0
Default value: Default
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -69,12 +73,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+157 -128
View File
@@ -1,115 +1,96 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Set-GPOZaurrOwner # Set-GPOZaurrOwner
## SYNOPSIS ## SYNOPSIS
Sets GPO Owner to Domain Admins or other choosen account Sets GPO Owner to Domain Admins or other choosen account
## SYNTAX ## SYNTAX
### Type (Default) ### Type (Default)
```powershell ```
Set-GPOZaurrOwner -Type <string> [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-Principal <string>] [-SkipSysvol] [-LimitProcessing <int>] [-ApprovedOwner <string[]>] [-Action <string>] [-Force] [-WhatIf] [-Confirm] [<CommonParameters>] Set-GPOZaurrOwner -Type <String> [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-ExtendedForestInformation <IDictionary>] [-Principal <String>] [-SkipSysvol] [-LimitProcessing <Int32>]
[-ApprovedOwner <String[]>] [-Action <String>] [-Force] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
### Named ### Named
```powershell ```
Set-GPOZaurrOwner [-GPOName <string>] [-GPOGuid <string>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-Principal <string>] [-SkipSysvol] [-LimitProcessing <int>] [-ApprovedOwner <string[]>] [-Action <string>] [-Force] [-WhatIf] [-Confirm] [<CommonParameters>] Set-GPOZaurrOwner [-GPOName <String>] [-GPOGuid <String>] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-Principal <String>] [-SkipSysvol]
[-LimitProcessing <Int32>] [-ApprovedOwner <String[]>] [-Action <String>] [-Force] [-WhatIf] [-Confirm]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
Sets GPO Owner to Domain Admins or other choosen account. GPO Owner is set in AD and SYSVOL unless specified otherwise. If account doesn't require change, no change is done. Sets GPO Owner to Domain Admins or other choosen account.
GPO Owner is set in AD and SYSVOL unless specified otherwise.
If account doesn't require change, no change is done.
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell
PS > Set-GPOZaurrOwner -Type All -Verbose -WhatIf -LimitProcessing 2
``` ```
Set-GPOZaurrOwner -Type All -Verbose -WhatIf -LimitProcessing 2
```
## PARAMETERS ## PARAMETERS
### -Action ### -Type
{{ Fill Action Description }} Unknown - finds unknown Owners and sets them to Administrative (Domain Admins) or chosen principal
NotMatching - find administrative groups only and if sysvol and gpo doesn't match - replace with chosen principal or Domain Admins if not specified
Inconsistent - same as not NotMatching
NotAdministrative - combination of Unknown/NotMatching and NotAdministrative - replace with chosen principal or Domain Admins if not specified
All - if Owner is known it checks if it's Administrative, if it sn't it fixes that.
If owner is unknown it fixes it
```yaml ```yaml
Type: String Type: String
Parameter Sets: Type, Named Parameter Sets: Type
Aliases: Aliases:
Possible values: OnlyAD, OnlyFileSystem
Required: False Required: True
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ApprovedOwner ### -GPOName
{{ Fill ApprovedOwner Description }} Name of GPO.
By default all GPOs are targetted
```yaml ```yaml
Type: String[] Type: String
Parameter Sets: Type, Named Parameter Sets: Named
Aliases: Exclusion, Exclusions Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -GPOGuid
Exclude domain from search, by default whole forest is scanned GUID of GPO.
By default all GPOs are targetted
```yaml ```yaml
Type: String[] Type: String
Parameter Sets: Type, Named Parameter Sets: Named
Aliases: Aliases: GUID, GPOID
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -ExtendedForestInformation
Ability to provide Forest Information from another command to speed up processing
```yaml
Type: IDictionary
Parameter Sets: Type, Named
Aliases:
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Force
Pushes new owner regardless if it's already set or not
```yaml
Type: SwitchParameter
Parameter Sets: Type, Named
Aliases:
Possible values:
Required: False
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### -Forest ### -Forest
@@ -117,47 +98,29 @@ Target different Forest, by default current forest is used
```yaml ```yaml
Type: String Type: String
Parameter Sets: Type, Named Parameter Sets: (All)
Aliases: ForestName Aliases: ForestName
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -GPOGuid ### -ExcludeDomains
GUID of GPO. By default all GPOs are targetted Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String Type: String[]
Parameter Sets: Named Parameter Sets: (All)
Aliases: GUID, GPOID
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -GPOName
Name of GPO. By default all GPOs are targetted
```yaml
Type: String
Parameter Sets: Named
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -IncludeDomains ### -IncludeDomains
@@ -165,31 +128,29 @@ Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Type, Named Parameter Sets: (All)
Aliases: Domain, Domains Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -LimitProcessing ### -ExtendedForestInformation
Allows to specify maximum number of items that will be fixed in a single run. It doesn't affect amount of GPOs processed Ability to provide Forest Information from another command to speed up processing
```yaml ```yaml
Type: Int32 Type: IDictionary
Parameter Sets: Type, Named Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: 2147483647 Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Principal ### -Principal
@@ -197,51 +158,122 @@ Parameter description
```yaml ```yaml
Type: String Type: String
Parameter Sets: Type, Named Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -SkipSysvol ### -SkipSysvol
Set GPO Owner only in Active Directory. By default GPO Owner is being set in both places Set GPO Owner only in Active Directory.
By default GPO Owner is being set in both places
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: Type, Named Parameter Sets: (All)
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: False Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Type ### -LimitProcessing
Unknown - finds unknown Owners and sets them to Administrative (Domain Admins) or chosen principal Allows to specify maximum number of items that will be fixed in a single run.
NotMatching - find administrative groups only and if sysvol and gpo doesn't match - replace with chosen principal or Domain Admins if not specified It doesn't affect amount of GPOs processed
Inconsistent - same as not NotMatching
NotAdministrative - combination of Unknown/NotMatching and NotAdministrative - replace with chosen principal or Domain Admins if not specified ```yaml
All - if Owner is known it checks if it's Administrative, if it sn't it fixes that. If owner is unknown it fixes it Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: 2147483647
Accept pipeline input: False
Accept wildcard characters: False
```
### -ApprovedOwner
{{ Fill ApprovedOwner Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Exclusion, Exclusions
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Action
{{ Fill Action Description }}
```yaml ```yaml
Type: String Type: String
Parameter Sets: Type Parameter Sets: (All)
Aliases: Aliases:
Possible values: Unknown, NotAdministrative, NotMatching, Inconsistent, All
Required: True Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
```
### -Force
Pushes new owner regardless if it's already set or not
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -249,12 +281,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+163 -12
View File
@@ -1,42 +1,193 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Set-GPOZaurrStatus # Set-GPOZaurrStatus
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Enables or disables user/computer section of Group Policy.
## SYNTAX ## SYNTAX
```powershell
Set-GPOZaurrStatus ### GPOName (Default)
```
Set-GPOZaurrStatus -GPOName <String> -Status <GpoStatus> [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-WhatIf] [-Confirm]
[<CommonParameters>]
```
### GPOGUID
```
Set-GPOZaurrStatus -GPOGuid <String> -Status <GpoStatus> [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-WhatIf] [-Confirm]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the Description }} Enables or disables user/computer section of Group Policy.
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell ```
Set-GPOZaurrStatus Set-GPOZaurrStatus -Name 'TEST | Empty GPO - AD.EVOTEC.PL CrossDomain GPO' -Status AllSettingsEnabled -Verbose
``` ```
### EXAMPLE 2
```
Set-GPOZaurrStatus -Name 'TEST | Empty GPO - AD.EVOTEC.PL CrossDomain GPO' -DomainName ad.evotec.pl -Status AllSettingsEnabled -Verbose
```
## PARAMETERS ## PARAMETERS
### -GPOName
Provide Group Policy Name
```yaml
Type: String
Parameter Sets: GPOName
Aliases: Name, DisplayName
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -GPOGuid
Provide Group Policy GUID
```yaml
Type: String
Parameter Sets: GPOGUID
Aliases: GUID, GPOID
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Status
Choose a status for provided Group Policy
```yaml
Type: GpoStatus
Parameter Sets: (All)
Aliases:
Accepted values: AllSettingsDisabled, UserSettingsDisabled, ComputerSettingsDisabled, AllSettingsEnabled
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Forest
Choose forest to target.
```yaml
Type: String
Parameter Sets: (All)
Aliases: ForestName
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains
Exclude domains from trying to find Group Policy Name or GUID
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludeDomains
Include domain (one or more) to find Group Policy Name or GUID
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Domain, Domains, DomainName
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExtendedForestInformation
Provide Extended Forest Information
```yaml
Type: IDictionary
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -WhatIf
Shows what would happen if the cmdlet runs.
The cmdlet is not run.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -Confirm
Prompts you for confirmation before running the cmdlet.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters ### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+41 -39
View File
@@ -1,63 +1,69 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: https://github.com/EvotecIT/GPOZaurr online version:
schema: 2.0.0 schema: 2.0.0
--- ---
# Skip-GroupPolicy # Skip-GroupPolicy
## SYNOPSIS ## SYNOPSIS
Used within ScriptBlocks only. Allows to exclude Group Policy from being affected by fixes Used within ScriptBlocks only.
Allows to exclude Group Policy from being affected by fixes
## SYNTAX ## SYNTAX
### Name (Default) ### Name (Default)
```powershell ```
Skip-GroupPolicy [-Name <string>] [-DomaiName <string>] [<CommonParameters>] Skip-GroupPolicy [-Name <String>] [-DomaiName <String>] [<CommonParameters>]
``` ```
### Guid ### Guid
```powershell ```
Skip-GroupPolicy [-GUID <string>] [-DomaiName <string>] [<CommonParameters>] Skip-GroupPolicy [-GUID <String>] [-DomaiName <String>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
Used within ScriptBlocks only. Allows to exclude Group Policy from being affected by fixes. Only some commands support it. The goal is to support all cmdlets. Used within ScriptBlocks only.
Allows to exclude Group Policy from being affected by fixes.
Only some commands support it.
The goal is to support all cmdlets.
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell ```
PS > Optimize-GPOZaurr -All -WhatIf -Verbose -LimitProcessing 2 { Optimize-GPOZaurr -All -WhatIf -Verbose -LimitProcessing 2 {
Skip-GroupPolicy -Name 'TEST | Drive Mapping 1' ```
Skip-GroupPolicy -Name 'TEST | Drive Mapping 1'
Skip-GroupPolicy -Name 'TEST | Drive Mapping 2' Skip-GroupPolicy -Name 'TEST | Drive Mapping 2'
} }
```
### EXAMPLE 2 ### EXAMPLE 2
```powershell ```
PS > Remove-GPOZaurr -Type Empty, Unlinked -BackupPath "$Env:UserProfile\Desktop\GPO" -BackupDated -LimitProcessing 2 -Verbose -WhatIf { Remove-GPOZaurr -Type Empty, Unlinked -BackupPath "$Env:UserProfile\Desktop\GPO" -BackupDated -LimitProcessing 2 -Verbose -WhatIf {
Skip-GroupPolicy -Name 'TEST | Drive Mapping 1'
Skip-GroupPolicy -Name 'TEST | Drive Mapping 2' -DomaiName 'ad.evotec.pl'
}
``` ```
Skip-GroupPolicy -Name 'TEST | Drive Mapping 1'
Skip-GroupPolicy -Name 'TEST | Drive Mapping 2' -DomaiName 'ad.evotec.pl'
}
## PARAMETERS ## PARAMETERS
### -DomaiName ### -Name
Define DomainName where Group Policy is located. Otherwise each domain will be checked and skipped if found with same name. Define Group Policy Name to skip
```yaml ```yaml
Type: String Type: String
Parameter Sets: Name, Guid Parameter Sets: Name
Aliases: Aliases: GpoName, DisplayName
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -GUID ### -GUID
@@ -67,29 +73,28 @@ Accept wildcard characters: True
Type: String Type: String
Parameter Sets: Guid Parameter Sets: Guid
Aliases: ID Aliases: ID
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### -Name ### -DomaiName
Define Group Policy Name to skip Define DomainName where Group Policy is located.
Otherwise each domain will be checked and skipped if found with same name.
```yaml ```yaml
Type: String Type: String
Parameter Sets: Name Parameter Sets: (All)
Aliases: GpoName, DisplayName Aliases:
Possible values:
Required: False Required: False
Position: named Position: Named
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: True Accept wildcard characters: False
``` ```
### CommonParameters ### CommonParameters
@@ -97,12 +102,9 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
- `None` ## NOTES
General notes
## RELATED LINKS ## RELATED LINKS
- None
+8
View File
@@ -1,5 +1,13 @@
Import-Module "$PSScriptRoot\..\GPoZaurr.psd1" -Force Import-Module "$PSScriptRoot\..\GPoZaurr.psd1" -Force
#$O = Invoke-GPOZaurrContent -GPOName "Test-RestrictedGroups" -Verbose
#$O
Invoke-GPOZaurr -Online -Type GPOBroken, GPOBrokenLink -Verbose -SplitReports
return
#$Output = Invoke-GPOZaurrContent -GPOPath 'C:\Support\GitHub\GpoZaurr\Ignore\GPODefender' #$Output = Invoke-GPOZaurrContent -GPOPath 'C:\Support\GitHub\GpoZaurr\Ignore\GPODefender'
$Output = Invoke-GPOZaurrContent -GPOPath 'C:\Support\GitHub\GpoZaurr\Ignore\GPOExport' -Type WindowsHelloForBusiness $Output = Invoke-GPOZaurrContent -GPOPath 'C:\Support\GitHub\GpoZaurr\Ignore\GPOExport' -Type WindowsHelloForBusiness
$Output | Format-Table $Output | Format-Table
@@ -4,7 +4,7 @@
#$Objects = Get-GPOZaurrInheritance #$Objects = Get-GPOZaurrInheritance
#$Objects | Format-Table #$Objects | Format-Table
# Get same output DN, CanonicalName, BlockInheritance (True/False) + Users/Computers + UsersCount/ComputerCount for those with Blocked Inheritance # Get same output DN, CanonicalName, BlockInheritance (True/False) + Users/Computers + UsersCount/ComputerCount for those with Blocked Inhertiance
# This is so you can have a list what machines are affected # This is so you can have a list what machines are affected
$ExcludedOU = @( $ExcludedOU = @(
# Works on OU/ # Works on OU/
@@ -3,6 +3,8 @@
$OUs = Get-GPOZaurrOrganizationalUnit $OUs = Get-GPOZaurrOrganizationalUnit
$Ous | Format-Table $Ous | Format-Table
return
Get-GPOZaurrOrganizationalUnit -Verbose -Option Unlink -Exclusions @( Get-GPOZaurrOrganizationalUnit -Verbose -Option Unlink -Exclusions @(
'OU=Groups,OU=Production,DC=ad,DC=evotec,DC=pl' 'OU=Groups,OU=Production,DC=ad,DC=evotec,DC=pl'
) | Format-Table ) | Format-Table
+19
View File
@@ -0,0 +1,19 @@
Import-Module .\GPOZaurr.psd1 -Force
$DirectoryPath = "C:\Support\GitHub\GpoZaurr\Data\ADMXTemplates"
$Paths = @(
[PSCustomObject] @{ Name = "Citrix"; Path = "C:\Program Files (x86)\Citrix\ICA Client\Configuration"; ExportFile = "Citrix" }
[PSCustomObject] @{ Name = "Remote Desktop Manager"; Path = "C:\Program Files\Devolutions\Remote Desktop Manager\Policies" ; ExportFile = "Remote Desktop Manager" }
[PSCustomObject] @{ Name = "Microsoft Windows 2022 Security Baseline"; Path = "C:\Users\przemyslaw.klys\Downloads\GPO\Windows Server 2022 Security Baseline\Windows Server-2022-Security-Baseline-FINAL\Templates" ; ExportFile = "Windows Server 2022 Security Baseline" }
[PSCustomObject] @{ Name = "Microsoft OneDrive"; Path = "C:\Program Files\Microsoft OneDrive\24.216.1027.0003\adm" ; ExportFile = "Microsoft OneDrive" }
[PSCustomObject] @{ Name = "Microsoft PowerShell 7 Core"; Path = "C:\Program Files\PowerShell\7" ; ExportFile = "Microsoft PowerShell 7" }
[PSCustomObject] @{ Name = "Microsoft Windows 11 (24H2) September 2024"; Path = "C:\Program Files (x86)\Microsoft Group Policy\Windows 11 Sep 2024 Update (24H2)" ; ExportFile = "Microsoft Windows11 24H2 September 2024" }
)
foreach ($Path in $Paths) {
$InitializeGPOZaurrTemplateSplat = @{
Path = $Path.Path
Name = $Path.Name
ExportPath = "$DirectoryPath\$($Path.ExportFile).json"
}
$List = Initialize-GPOZaurrTemplate @InitializeGPOZaurrTemplateSplat -Verbose
}
+17 -19
View File
@@ -4,37 +4,35 @@
CmdletsToExport = @() CmdletsToExport = @()
CompanyName = 'Evotec' CompanyName = 'Evotec'
CompatiblePSEditions = @('Desktop') CompatiblePSEditions = @('Desktop')
Copyright = '(c) 2011 - 2026 Przemyslaw Klys @ Evotec. All rights reserved.' Copyright = '(c) 2011 - 2024 Przemyslaw Klys @ Evotec. All rights reserved.'
Description = 'Group Policy Eater is a PowerShell module that aims to gather information about Group Policies but also allows fixing issues that you may find in them.' Description = 'Group Policy Eater is a PowerShell module that aims to gather information about Group Policies but also allows fixing issues that you may find in them.'
FunctionsToExport = @('Add-GPOPermission', 'Add-GPOZaurrPermission', 'Backup-GPOZaurr', 'Clear-GPOZaurrSysvolDFSR', 'ConvertFrom-CSExtension', 'Export-GPOZaurrContent', 'Find-CSExtension', 'Get-GPOZaurr', 'Get-GPOZaurrAD', 'Get-GPOZaurrBackupInformation', 'Get-GPOZaurrBroken', 'Get-GPOZaurrBrokenLink', 'Get-GPOZaurrDictionary', 'Get-GPOZaurrDuplicateObject', 'Get-GPOZaurrFiles', 'Get-GPOZaurrFilesPolicyDefinition', 'Get-GPOZaurrFolders', 'Get-GPOZaurrInheritance', 'Get-GPOZaurrLegacyFiles', 'Get-GPOZaurrLink', 'Get-GPOZaurrLinkSummary', 'Get-GPOZaurrMissingFiles', 'Get-GPOZaurrNetLogon', 'Get-GPOZaurrOrganizationalUnit', 'Get-GPOZaurrOwner', 'Get-GPOZaurrPassword', 'Get-GPOZaurrPermission', 'Get-GPOZaurrPermissionAnalysis', 'Get-GPOZaurrPermissionConsistency', 'Get-GPOZaurrPermissionIssue', 'Get-GPOZaurrPermissionRoot', 'Get-GPOZaurrPermissionSummary', 'Get-GPOZaurrRedirect', 'Get-GPOZaurrSysvolDFSR', 'Get-GPOZaurrUpdates', 'Get-GPOZaurrWMI', 'Invoke-GPOZaurr', 'Invoke-GPOZaurrContent', 'Invoke-GPOZaurrPermission', 'Invoke-GPOZaurrSupport', 'New-GPOZaurrWMI', 'Optimize-GPOZaurr', 'Remove-GPOPermission', 'Remove-GPOZaurr', 'Remove-GPOZaurrBroken', 'Remove-GPOZaurrDuplicateObject', 'Remove-GPOZaurrFolders', 'Remove-GPOZaurrLegacyFiles', 'Remove-GPOZaurrLinkEmptyOU', 'Remove-GPOZaurrPermission', 'Remove-GPOZaurrWMI', 'Repair-GPOZaurrBrokenLink', 'Repair-GPOZaurrNetLogonOwner', 'Repair-GPOZaurrPermission', 'Repair-GPOZaurrPermissionConsistency', 'Restore-GPOZaurr', 'Save-GPOZaurrFiles', 'Set-GPOOwner', 'Set-GPOZaurrOwner', 'Set-GPOZaurrStatus', 'Skip-GroupPolicy') FunctionsToExport = @('Add-GPOPermission', 'Add-GPOZaurrPermission', 'Backup-GPOZaurr', 'Clear-GPOZaurrSysvolDFSR', 'ConvertFrom-CSExtension', 'Export-GPOZaurrContent', 'Find-CSExtension', 'Get-GPOZaurr', 'Get-GPOZaurrAD', 'Get-GPOZaurrTemplates', 'Get-GPOZaurrBackupInformation', 'Get-GPOZaurrBroken', 'Get-GPOZaurrBrokenLink', 'Get-GPOZaurrDictionary', 'Get-GPOZaurrDuplicateObject', 'Get-GPOZaurrFiles', 'Get-GPOZaurrFilesPolicyDefinition', 'Get-GPOZaurrFolders', 'Get-GPOZaurrInheritance', 'Get-GPOZaurrLegacyFiles', 'Get-GPOZaurrLink', 'Get-GPOZaurrLinkSummary', 'Get-GPOZaurrMissingFiles', 'Get-GPOZaurrNetLogon', 'Get-GPOZaurrOrganizationalUnit', 'Get-GPOZaurrOwner', 'Get-GPOZaurrPassword', 'Get-GPOZaurrPermission', 'Get-GPOZaurrPermissionAnalysis', 'Get-GPOZaurrPermissionConsistency', 'Get-GPOZaurrPermissionIssue', 'Get-GPOZaurrPermissionRoot', 'Get-GPOZaurrPermissionSummary', 'Get-GPOZaurrRedirect', 'Get-GPOZaurrSysvolDFSR', 'Get-GPOZaurrUpdates', 'Get-GPOZaurrWMI', 'Initialize-GPOZaurrTemplate', 'Invoke-GPOZaurr', 'Invoke-GPOZaurrContent', 'Invoke-GPOZaurrPermission', 'Invoke-GPOZaurrSupport', 'New-GPOZaurrWMI', 'Optimize-GPOZaurr', 'Remove-GPOPermission', 'Remove-GPOZaurr', 'Remove-GPOZaurrBroken', 'Remove-GPOZaurrDuplicateObject', 'Remove-GPOZaurrFolders', 'Remove-GPOZaurrLegacyFiles', 'Remove-GPOZaurrLinkEmptyOU', 'Remove-GPOZaurrPermission', 'Remove-GPOZaurrWMI', 'Repair-GPOZaurrBrokenLink', 'Repair-GPOZaurrNetLogonOwner', 'Repair-GPOZaurrPermission', 'Repair-GPOZaurrPermissionConsistency', 'Restore-GPOZaurr', 'Save-GPOZaurrFiles', 'Set-GPOOwner', 'Set-GPOZaurrOwner', 'Set-GPOZaurrStatus', 'Skip-GroupPolicy')
GUID = 'f7d4c9e4-0298-4f51-ad77-e8e3febebbde' GUID = 'f7d4c9e4-0298-4f51-ad77-e8e3febebbde'
ModuleVersion = '1.1.10' ModuleVersion = '1.1.9'
PowerShellVersion = '5.1' PowerShellVersion = '5.1'
PrivateData = @{ PrivateData = @{
PSData = @{ PSData = @{
ExternalModuleDependencies = @('CimCmdlets') ExternalModuleDependencies = @('CimCmdlets', 'Microsoft.PowerShell.Management', 'Microsoft.PowerShell.Utility', 'Microsoft.PowerShell.Security')
ProjectUri = 'https://github.com/EvotecIT/GPOZaurr' ProjectUri = 'https://github.com/EvotecIT/GPOZaurr'
RequireLicenseAcceptance = $false
Tags = @('Windows', 'ActiveDirectory', 'GPO', 'GroupPolicy') Tags = @('Windows', 'ActiveDirectory', 'GPO', 'GroupPolicy')
} }
} }
RequiredModules = @(@{ RequiredModules = @(@{
Guid = '0b0ba5c5-ec85-4c2b-a718-874e55a8bc3f' Guid = '0b0ba5c5-ec85-4c2b-a718-874e55a8bc3f'
ModuleName = 'PSWriteColor' ModuleName = 'PSWriteColor'
ModuleVersion = '1.0.3' ModuleVersion = '1.0.1'
}, @{ }, @{
Guid = 'ee272aa8-baaa-4edf-9f45-b6d6f7d844fe' Guid = 'ee272aa8-baaa-4edf-9f45-b6d6f7d844fe'
ModuleName = 'PSSharedGoods' ModuleName = 'PSSharedGoods'
ModuleVersion = '0.0.312' ModuleVersion = '0.0.300'
}, @{ }, @{
Guid = '9fc9fd61-7f11-4f4b-a527-084086f1905f' Guid = '9fc9fd61-7f11-4f4b-a527-084086f1905f'
ModuleName = 'ADEssentials' ModuleName = 'ADEssentials'
ModuleVersion = '1.0.4' ModuleVersion = '0.0.226'
}, @{ }, @{
Guid = 'a7bdf640-f5cb-4acf-9de0-365b322d245c' Guid = 'a7bdf640-f5cb-4acf-9de0-365b322d245c'
ModuleName = 'PSWriteHTML' ModuleName = 'PSWriteHTML'
ModuleVersion = '1.41.0' ModuleVersion = '1.27.0'
}) }, 'CimCmdlets', 'Microsoft.PowerShell.Management', 'Microsoft.PowerShell.Utility', 'Microsoft.PowerShell.Security')
RootModule = 'GPOZaurr.psm1' RootModule = 'GPOZaurr.psm1'
ScriptsToProcess = @()
} }
+4 -4
View File
@@ -13,7 +13,7 @@ if ($AssemblyFolders.BaseName -contains 'Standard') {
} }
} }
$FoundErrors = @( $FoundErrors = @(
foreach ($Import in @($Assembly)) { Foreach ($Import in @($Assembly)) {
try { try {
Add-Type -Path $Import.Fullname -ErrorAction Stop Add-Type -Path $Import.Fullname -ErrorAction Stop
} catch [System.Reflection.ReflectionTypeLoadException] { } catch [System.Reflection.ReflectionTypeLoadException] {
@@ -35,10 +35,10 @@ $FoundErrors = @(
} }
} }
#Dot source the files #Dot source the files
foreach ($Import in @($Private + $Public)) { Foreach ($Import in @($Private + $Public)) {
try { Try {
. $Import.Fullname . $Import.Fullname
} catch { } Catch {
Write-Error -Message "Failed to import functions from $($import.Fullname): $_" Write-Error -Message "Failed to import functions from $($import.Fullname): $_"
$true $true
} }
+2 -40
View File
@@ -92,26 +92,7 @@
#> #>
if ($Value.Value.Element) { if ($Value.Value.Element) {
[Array] $ElementValues = foreach ($Element in @($Value.Value.Element)) { $Settings["$SubName"] = $Value.Value.Element.Data -join '; '
if (-not $Element) {
continue
}
$ElementName = [string] $Element.Name
$ElementData = [string] $Element.Data
if (-not [string]::IsNullOrWhiteSpace($ElementName) -and ($ElementData -eq '' -or $ElementData -eq '0')) {
$ElementName
} elseif (-not [string]::IsNullOrWhiteSpace($ElementName) -and -not [string]::IsNullOrWhiteSpace($ElementData) -and $ElementName -ne $ElementData) {
"$ElementName ($ElementData)"
} elseif (-not [string]::IsNullOrWhiteSpace($ElementData)) {
$ElementData
} elseif (-not [string]::IsNullOrWhiteSpace($ElementName)) {
$ElementName
}
}
if ($ElementValues.Count -gt 0) {
$Settings["$SubName"] = $ElementValues -join '; '
}
} elseif ($null -eq $Value.Value.Name) { } elseif ($null -eq $Value.Value.Name) {
# Shouldn't happen but lets see # Shouldn't happen but lets see
Write-Verbose "Tracking $Value" Write-Verbose "Tracking $Value"
@@ -193,26 +174,7 @@
#> #>
if ($Value.Value.Element) { if ($Value.Value.Element) {
[Array] $ElementValues = foreach ($Element in @($Value.Value.Element)) { $CreateGPO["$SubName"] = $Value.Value.Element.Data -join '; '
if (-not $Element) {
continue
}
$ElementName = [string] $Element.Name
$ElementData = [string] $Element.Data
if (-not [string]::IsNullOrWhiteSpace($ElementName) -and ($ElementData -eq '' -or $ElementData -eq '0')) {
$ElementName
} elseif (-not [string]::IsNullOrWhiteSpace($ElementName) -and -not [string]::IsNullOrWhiteSpace($ElementData) -and $ElementName -ne $ElementData) {
"$ElementName ($ElementData)"
} elseif (-not [string]::IsNullOrWhiteSpace($ElementData)) {
$ElementData
} elseif (-not [string]::IsNullOrWhiteSpace($ElementName)) {
$ElementName
}
}
if ($ElementValues.Count -gt 0) {
$CreateGPO["$SubName"] = $ElementValues -join '; '
}
} elseif ($null -eq $Value.Value.Name) { } elseif ($null -eq $Value.Value.Name) {
# Shouldn't happen but lets see # Shouldn't happen but lets see
Write-Verbose "Tracking $Value" Write-Verbose "Tracking $Value"
@@ -1,79 +0,0 @@
function ConvertTo-XMLRegistryDefenderOnReport {
<#
.SYNOPSIS
Converts Defender-related raw registry settings from the RegistrySettings report.
.DESCRIPTION
This function is used as a fallback for Defender settings that are not exposed as
policy categories but are still present in RegistrySettings output.
.PARAMETER GPO
RegistrySettings report object generated by ConvertTo-XMLRegistrySettings -SingleObject.
#>
[cmdletBinding()]
param(
[PSCustomObject] $GPO
)
[Array] $RegistrySettings = @()
if ($GPO.Settings) {
$RegistrySettings = $GPO.Settings
} elseif ($GPO.DataSet) {
# This path supports direct use from dictionary code where RegistrySettings is not requested explicitly.
[Array] $DataSet = $GPO.DataSet
if ($DataSet.Count -gt 0 -and (
$DataSet[0].PSObject.Properties.Name -contains 'Properties' -or
$DataSet[0].PSObject.Properties.Name -contains 'Registry' -or
$DataSet[0].PSObject.Properties.Name -contains 'Collection'
)
) {
$RegistrySettings = Get-XMLNestedRegistry -GPO $GPO -DataSet $GPO.DataSet
}
}
$UsedNames = [System.Collections.Generic.List[string]]::new()
$CreateGPO = [ordered] @{
DisplayName = $GPO.DisplayName
DomainName = $GPO.DomainName
GUID = $GPO.GUID
GpoType = $GPO.GpoType
}
$DefenderSettings = 0
foreach ($Registry in $RegistrySettings) {
if ($Registry.Key -like 'SOFTWARE\Microsoft\Windows Defender*') {
$DefenderSettings++
$SettingName = if ($Registry.Name) { $Registry.Name } else { $Registry.Key }
$PropertyName = Format-ToTitleCase -Text $SettingName -RemoveWhiteSpace -RemoveChar ',', '-', "'", '\(', '\)', ':'
if ($PropertyName -in $UsedNames) {
$UsedNames.Add($PropertyName)
$TimesUsed = ($UsedNames | Group-Object | Where-Object { $_.Name -eq $PropertyName }).Count
$PropertyName = -join ($PropertyName, "$TimesUsed")
} else {
$UsedNames.Add($PropertyName)
}
$SettingValue = $Registry.Value
if ($null -eq $SettingValue -or "$SettingValue" -eq '') {
$SettingValue = $Registry.Name
}
$CreateGPO[$PropertyName] = $SettingValue
# Some Defender data can be encoded in either value or value-name depending on setting type.
if ($Registry.Name -and "$SettingValue" -ne "$($Registry.Name)") {
$CreateGPO["$($PropertyName)ValueName"] = $Registry.Name
}
if ($Registry.Key) {
$CreateGPO["$($PropertyName)RegistryKey"] = $Registry.Key
}
}
}
if ($DefenderSettings -gt 0) {
$CreateGPO['Linked'] = $GPO.Linked
$CreateGPO['LinksCount'] = $GPO.LinksCount
$CreateGPO['Links'] = $GPO.Links
[PSCustomObject] $CreateGPO
}
}
-73
View File
@@ -1,73 +0,0 @@
function Get-ADAdministrativeGroups {
<#
.SYNOPSIS
Retrieves administrative groups information from Active Directory.
.DESCRIPTION
Retrieves the Domain Admins and Enterprise Admins groups for the requested
forest and returns lookup dictionaries keyed by domain, NetBIOS name, and SID.
.PARAMETER Type
Specifies the type of administrative groups to retrieve. Valid values are
'DomainAdmins' and 'EnterpriseAdmins'.
.PARAMETER Forest
Specifies the name of the forest to query for administrative groups.
.PARAMETER ExcludeDomains
Specifies an array of domains to exclude from the query.
.PARAMETER IncludeDomains
Specifies an array of domains to include in the query.
.PARAMETER ExtendedForestInformation
Specifies additional information about the forest to include in the query.
#>
[cmdletBinding()]
param(
[parameter(Mandatory)][validateSet('DomainAdmins', 'EnterpriseAdmins')][string[]] $Type,
[alias('ForestName')][string] $Forest,
[string[]] $ExcludeDomains,
[alias('Domain', 'Domains')][string[]] $IncludeDomains,
[System.Collections.IDictionary] $ExtendedForestInformation
)
$ADDictionary = [ordered] @{
ByNetBIOS = [ordered] @{}
BySID = [ordered] @{}
}
$ForestInformation = Get-WinADForestDetails -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation
foreach ($Domain in $ForestInformation.Domains) {
$ADDictionary[$Domain] = [ordered] @{}
$QueryServer = $ForestInformation['QueryServers'][$Domain]['HostName'][0]
$DomainInformation = Get-ADDomain -Server $QueryServer
if ($Type -contains 'DomainAdmins') {
Get-ADGroup -Filter "SID -eq '$($DomainInformation.DomainSID)-512'" -Server $QueryServer -ErrorAction SilentlyContinue | ForEach-Object {
$ADDictionary['ByNetBIOS']["$($DomainInformation.NetBIOSName)\$($_.Name)"] = $_
$ADDictionary[$Domain]['DomainAdmins'] = "$($DomainInformation.NetBIOSName)\$($_.Name)"
$ADDictionary['BySID'][$_.SID.Value] = $_
}
}
}
foreach ($Domain in $ForestInformation.Forest.Domains) {
if (-not $ADDictionary[$Domain]) {
$ADDictionary[$Domain] = [ordered] @{}
}
if ($Type -contains 'EnterpriseAdmins') {
$QueryServer = $ForestInformation['QueryServers'][$Domain]['HostName'][0]
$DomainInformation = Get-ADDomain -Server $QueryServer
Get-ADGroup -Filter "SID -eq '$($DomainInformation.DomainSID)-519'" -Server $QueryServer -ErrorAction SilentlyContinue | ForEach-Object {
$ADDictionary['ByNetBIOS']["$($DomainInformation.NetBIOSName)\$($_.Name)"] = $_
$ADDictionary[$Domain]['EnterpriseAdmins'] = "$($DomainInformation.NetBIOSName)\$($_.Name)"
$ADDictionary['BySID'][$_.SID.Value] = $_
}
}
}
$ADDictionary
}
+1 -1
View File
@@ -56,7 +56,7 @@
[System.Collections.IDictionary] $ADAdministrativeGroups [System.Collections.IDictionary] $ADAdministrativeGroups
) )
if (-not $ADAdministrativeGroups) { if (-not $ADAdministrativeGroups) {
$ADAdministrativeGroups = Get-ADAdministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation $ADAdministrativeGroups = Get-ADADministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation
} }
$AdministrativeExists = [ordered] @{ $AdministrativeExists = [ordered] @{
DisplayName = $GPOPermissions[0].DisplayName DisplayName = $GPOPermissions[0].DisplayName
+54 -54
View File
@@ -354,58 +354,58 @@
} }
} else { } else {
$GPOOutput = [PsCustomObject] @{ $GPOOutput = [PsCustomObject] @{
'DisplayName' = $XMLContent.GPO.Name 'DisplayName' = $XMLContent.GPO.Name
'DomainName' = $XMLContent.GPO.Identifier.Domain.'#text' 'DomainName' = $XMLContent.GPO.Identifier.Domain.'#text'
'GUID' = $XMLContent.GPO.Identifier.Identifier.InnerText -replace '{' -replace '}' 'GUID' = $XMLContent.GPO.Identifier.Identifier.InnerText -replace '{' -replace '}'
'Days' = (New-TimeSpan -Start ([DateTime] $XMLContent.GPO.ModifiedTime) -End (Get-Date)).Days 'Days' = (New-TimeSpan -Start ([DateTime] $XMLContent.GPO.ModifiedTime) -End (Get-Date)).Days
'Empty' = $Empty 'Empty' = $Empty
'Linked' = $Linked 'Linked' = $Linked
'Enabled' = $EnabledBool 'Enabled' = $EnabledBool
'Optimized' = $Optimized 'Optimized' = $Optimized
'Problem' = $Problem 'Problem' = $Problem
'ApplyPermission' = $null 'ApplyPermission' = $null
'Exclude' = $Exclude 'Exclude' = $Exclude
'SizeMB' = [Math]::Round($TotalSize / 1MB, 2) 'SizeMB' = [Math]::Round($TotalSize / 1MB, 2)
'Size' = $TotalSize 'Size' = $TotalSize
'Description' = $GPO.Description 'Description' = $GPO.Description
'ComputerPolicies' = $XMLContent.GPO.Computer.ExtensionData.Name -join ", " 'ComputerPolicies' = $XMLContent.GPO.Computer.ExtensionData.Name -join ", "
'UserPolicies' = $XMLContent.GPO.User.ExtensionData.Name -join ", " 'UserPolicies' = $XMLContent.GPO.User.ExtensionData.Name -join ", "
'FilesCount' = $FilesCount 'FilesCount' = $FilesCount
'LinksCount' = $LinksTotalCount 'LinksCount' = $LinksTotalCount
'LinksEnabledCount' = $LinksEnabledCount 'LinksEnabledCount' = $LinksEnabledCount
'LinksDisabledCount' = $LinksDisabledCount 'LinksDisabledCount' = $LinksDisabledCount
'EnabledDetails' = $Enabled 'EnabledDetails' = $Enabled
'ComputerProblem' = $ComputerProblem 'ComputerProblem' = $ComputerProblem
'ComputerOptimized' = $ComputerOptimized 'ComputerOptimized' = $ComputerOptimized
'UserProblem' = $UserProblem 'UserProblem' = $UserProblem
'UserOptimized' = $UserOptimized 'UserOptimized' = $UserOptimized
'ComputerSettingsAvailable' = $ComputerSettingsAvailable 'ComputerSettingsAvailable' = $ComputerSettingsAvailable
'UserSettingsAvailable' = $UserSettingsAvailable 'UserSettingsAvailable' = $UserSettingsAvailable
#'ComputerSettingsAvailableReal' = $ComputerSettingsAvailableReal #'ComputerSettingsAvailableReal' = $ComputerSettingsAvailableReal
#'UserSettingsAvailableReal' = $UserSettingsAvailableReal #'UserSettingsAvailableReal' = $UserSettingsAvailableReal
'ComputerSettingsTypes' = $OutputComputer.Name -join ", " 'ComputerSettingsTypes' = $OutputComputer.Name -join ", "
'UserSettingsTypes' = $OutputUser.Name -join ", " 'UserSettingsTypes' = $OutputUser.Name -join ", "
'ComputerEnabled' = $ComputerEnabled 'ComputerEnabled' = $ComputerEnabled
'UserEnabled' = $UserEnabled 'UserEnabled' = $UserEnabled
'ComputerSettingsStatus' = if ($XMLContent.GPO.Computer.VersionDirectory -eq 0 -and $XMLContent.GPO.Computer.VersionSysvol -eq 0) { "NeverModified" } else { "Modified" } 'ComputerSettingsStatus' = if ($XMLContent.GPO.Computer.VersionDirectory -eq 0 -and $XMLContent.GPO.Computer.VersionSysvol -eq 0) { "NeverModified" } else { "Modified" }
'ComputerSettingsVersionIdentical' = if ($XMLContent.GPO.Computer.VersionDirectory -eq $XMLContent.GPO.Computer.VersionSysvol) { $true } else { $false } 'ComputerSetttingsVersionIdentical' = if ($XMLContent.GPO.Computer.VersionDirectory -eq $XMLContent.GPO.Computer.VersionSysvol) { $true } else { $false }
'ComputerSettings' = $XMLContent.GPO.Computer.ExtensionData.Extension 'ComputerSettings' = $XMLContent.GPO.Computer.ExtensionData.Extension
'UserSettingsStatus' = if ($XMLContent.GPO.User.VersionDirectory -eq 0 -and $XMLContent.GPO.User.VersionSysvol -eq 0) { "NeverModified" } else { "Modified" } 'UserSettingsStatus' = if ($XMLContent.GPO.User.VersionDirectory -eq 0 -and $XMLContent.GPO.User.VersionSysvol -eq 0) { "NeverModified" } else { "Modified" }
'UserSettingsVersionIdentical' = if ($XMLContent.GPO.User.VersionDirectory -eq $XMLContent.GPO.User.VersionSysvol) { $true } else { $false } 'UserSettingsVersionIdentical' = if ($XMLContent.GPO.User.VersionDirectory -eq $XMLContent.GPO.User.VersionSysvol) { $true } else { $false }
'UserSettings' = $XMLContent.GPO.User.ExtensionData.Extension 'UserSettings' = $XMLContent.GPO.User.ExtensionData.Extension
'NoSettings' = $NoSettings 'NoSettings' = $NoSettings
'CreationTime' = [DateTime] $XMLContent.GPO.CreatedTime 'CreationTime' = [DateTime] $XMLContent.GPO.CreatedTime
'ModificationTime' = [DateTime] $XMLContent.GPO.ModifiedTime 'ModificationTime' = [DateTime] $XMLContent.GPO.ModifiedTime
'ReadTime' = [DateTime] $XMLContent.GPO.ReadTime 'ReadTime' = [DateTime] $XMLContent.GPO.ReadTime
'WMIFilter' = $GPO.WmiFilter.name 'WMIFilter' = $GPO.WmiFilter.name
'WMIFilterDescription' = $GPO.WmiFilter.Description 'WMIFilterDescription' = $GPO.WmiFilter.Description
'GPODistinguishedName' = $GPO.Path 'GPODistinguishedName' = $GPO.Path
'GPOSysvolPath' = $SysvolGpoPath 'GPOSysvolPath' = $SysvolGpoPath
'SDDL' = if ($Splitter -ne '') { $XMLContent.GPO.SecurityDescriptor.SDDL.'#text' -join $Splitter } else { $XMLContent.GPO.SecurityDescriptor.SDDL.'#text' } 'SDDL' = if ($Splitter -ne '') { $XMLContent.GPO.SecurityDescriptor.SDDL.'#text' -join $Splitter } else { $XMLContent.GPO.SecurityDescriptor.SDDL.'#text' }
'Owner' = $XMLContent.GPO.SecurityDescriptor.Owner.Name.'#text' 'Owner' = $XMLContent.GPO.SecurityDescriptor.Owner.Name.'#text'
'OwnerSID' = $XMLContent.GPO.SecurityDescriptor.Owner.SID.'#text' 'OwnerSID' = $XMLContent.GPO.SecurityDescriptor.Owner.SID.'#text'
'OwnerType' = $OwnerType 'OwnerType' = $OwnerType
'ACL' = @( 'ACL' = @(
[PsCustomObject] @{ [PsCustomObject] @{
'Name' = $XMLContent.GPO.SecurityDescriptor.Owner.Name.'#text' 'Name' = $XMLContent.GPO.SecurityDescriptor.Owner.Name.'#text'
'Sid' = $XMLContent.GPO.SecurityDescriptor.Owner.SID.'#text' 'Sid' = $XMLContent.GPO.SecurityDescriptor.Owner.SID.'#text'
@@ -425,10 +425,10 @@
} }
} }
) )
'Auditing' = if ($XMLContent.GPO.SecurityDescriptor.AuditingPresent.'#text' -eq 'true') { $true } else { $false } 'Auditing' = if ($XMLContent.GPO.SecurityDescriptor.AuditingPresent.'#text' -eq 'true') { $true } else { $false }
'Links' = $Links 'Links' = $Links
'LinksObjects' = $LinksObjects 'LinksObjects' = $LinksObjects
'GPOObject' = $GPO 'GPOObject' = $GPO
} }
if ($GPOOutput.ACL) { if ($GPOOutput.ACL) {
$GPOOutput.ApplyPermission = $false $GPOOutput.ApplyPermission = $false
@@ -1,5 +1,5 @@
$GPOZaurrBlockedInheritance = [ordered] @{ $GPOZaurrBlockedInheritance = [ordered] @{
Name = 'Group Policy Blocked Inheritance' Name = 'Group Policy Blocked Inhertiance'
Enabled = $true Enabled = $true
ActionRequired = $null ActionRequired = $null
Data = $null Data = $null
+9 -28
View File
@@ -494,15 +494,12 @@
Settings = 'Policy' Settings = 'Policy'
} }
) )
GPOPath = @( GPOPath = 'Policies -> Administrative Templates -> LAPS'
'Policies -> Administrative Templates -> LAPS'
'Policies -> Administrative Templates -> System -> LAPS'
)
Code = { Code = {
ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'LAPS', 'System/LAPS*' ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'LAPS'
} }
CodeSingle = { CodeSingle = {
ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'LAPS', 'System/LAPS*' -SingleObject ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'LAPS' -SingleObject
} }
} }
Lithnet = @{ Lithnet = @{
@@ -1172,26 +1169,13 @@
Category = 'RegistrySettings' Category = 'RegistrySettings'
Settings = 'Policy' Settings = 'Policy'
} }
@{
Category = 'RegistrySettings'
Settings = 'RegistrySettings'
}
)
GPOPath = @(
'Policies -> Administrative Templates -> Windows Components/Windows Defender'
'Policies -> Administrative Templates -> Windows Components/Microsoft Defender Antivirus'
) )
GPOPath = 'Policies -> Administrative Templates -> Windows Components/Windows Defender'
Code = { Code = {
@( ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'Windows Components/Windows Defender*'
ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'Windows Components/Windows Defender*', 'Windows Components/Microsoft Defender Antivirus*'
ConvertTo-XMLRegistryDefenderOnReport -GPO $GPO
) | Where-Object { $_ }
} }
CodeSingle = { CodeSingle = {
@( ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'Windows Components/Windows Defender*' -SingleObject
ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'Windows Components/Windows Defender*', 'Windows Components/Microsoft Defender Antivirus*' -SingleObject
ConvertTo-XMLRegistryDefenderOnReport -GPO $GPO
) | Where-Object { $_ }
} }
} }
WindowsDefenderExploitGuard = @{ WindowsDefenderExploitGuard = @{
@@ -1202,15 +1186,12 @@
Settings = 'Policy' Settings = 'Policy'
} }
) )
GPOPath = @( GPOPath = 'Policies -> Administrative Templates -> Windows Components/Microsoft Defender Antivirus/Microsoft Defender Exploit Guard'
'Policies -> Administrative Templates -> Windows Components/Windows Defender/Windows Defender Exploit Guard'
'Policies -> Administrative Templates -> Windows Components/Microsoft Defender Antivirus/Microsoft Defender Exploit Guard'
)
Code = { Code = {
ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'Windows Components/Windows Defender*/Windows Defender Exploit Guard*', 'Windows Components/Microsoft Defender Antivirus/Microsoft Defender Exploit Guard*', 'Windows Components/Microsoft Defender Antivirus/Windows Defender Exploit Guard*' ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'Windows Components/Microsoft Defender Antivirus/Microsoft Defender Exploit Guard*'
} }
CodeSingle = { CodeSingle = {
ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'Windows Components/Windows Defender*/Windows Defender Exploit Guard*', 'Windows Components/Microsoft Defender Antivirus/Microsoft Defender Exploit Guard*', 'Windows Components/Microsoft Defender Antivirus/Windows Defender Exploit Guard*' -SingleObject ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'Windows Components/Microsoft Defender Antivirus/Microsoft Defender Exploit Guard*' -SingleObject
} }
} }
# WindowsFirewall = @{ # WindowsFirewall = @{
+1 -1
View File
@@ -91,7 +91,7 @@
) )
$ForestInformation = Get-WinADForestDetails -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation -Extended $ForestInformation = Get-WinADForestDetails -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation -Extended
if (-not $ADAdministrativeGroups) { if (-not $ADAdministrativeGroups) {
$ADAdministrativeGroups = Get-ADAdministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation $ADAdministrativeGroups = Get-ADADministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation
} }
if ($GPOName) { if ($GPOName) {
$Splat = @{ $Splat = @{
+1 -1
View File
@@ -88,7 +88,7 @@
Begin { Begin {
if (-not $ADAdministrativeGroups) { if (-not $ADAdministrativeGroups) {
Write-Verbose "Get-GPOZaurr - Getting ADAdministrativeGroups" Write-Verbose "Get-GPOZaurr - Getting ADAdministrativeGroups"
$ADAdministrativeGroups = Get-ADAdministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation $ADAdministrativeGroups = Get-ADADministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation
} }
if (-not $GPOPath) { if (-not $GPOPath) {
$ForestInformation = Get-WinADForestDetails -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation $ForestInformation = Get-WinADForestDetails -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation
+2 -2
View File
@@ -119,7 +119,7 @@
$Splat['Filter'] = -join ($Splat['Filter'], ' -and ((WhenChanged -ge $DateFrom -and WhenChanged -le $DateTo) -or (WhenCreated -ge $DateFrom -and WhenCreated -le $DateTo))') $Splat['Filter'] = -join ($Splat['Filter'], ' -and ((WhenChanged -ge $DateFrom -and WhenChanged -le $DateTo) -or (WhenCreated -ge $DateFrom -and WhenCreated -le $DateTo))')
} elseif ($DateProperty -eq 'WhenChanged' -or $DateProperty -eq 'WhenCreated') { } elseif ($DateProperty -eq 'WhenChanged' -or $DateProperty -eq 'WhenCreated') {
$Property = $DateProperty[0] $Property = $DateProperty[0]
$Splat['Filter'] = -join ($Splat['Filter'], " -and ($Property -ge `$DateFrom -and $Property -le `$DateTo)") $Splat['Filter'] = -join ($Splat['Filter'], " -and ($Property -ge $DateFrom -and $Property -le $DateTo)")
} else { } else {
Write-Warning -Message "Get-GPOZaurrAD - DateProperty parameter is empty. Provide name and try again." Write-Warning -Message "Get-GPOZaurrAD - DateProperty parameter is empty. Provide name and try again."
continue continue
@@ -131,7 +131,7 @@
$Splat['Filter'] = -join ($Splat['Filter'], ' -and ((WhenChanged -ge $DateFrom -and WhenChanged -le $DateTo) -or (WhenCreated -ge $DateFrom -and WhenCreated -le $DateTo))') $Splat['Filter'] = -join ($Splat['Filter'], ' -and ((WhenChanged -ge $DateFrom -and WhenChanged -le $DateTo) -or (WhenCreated -ge $DateFrom -and WhenCreated -le $DateTo))')
} elseif ($DateProperty -eq 'WhenChanged' -or $DateProperty -eq 'WhenCreated') { } elseif ($DateProperty -eq 'WhenChanged' -or $DateProperty -eq 'WhenCreated') {
$Property = $DateProperty[0] $Property = $DateProperty[0]
$Splat['Filter'] = -join ($Splat['Filter'], " -and ($Property -ge `$DateFrom -and $Property -le `$DateTo)") $Splat['Filter'] = -join ($Splat['Filter'], " -and ($Property -ge $DateFrom -and $Property -le $DateTo)")
} else { } else {
Write-Warning -Message "Get-GPOZaurrAD - DateProperty parameter is empty. Provide name and try again." Write-Warning -Message "Get-GPOZaurrAD - DateProperty parameter is empty. Provide name and try again."
continue continue
+17
View File
@@ -0,0 +1,17 @@
function Get-GPOZaurrTemplates {
[CmdletBinding()]
param(
)
$SysvolADMXPath = "\\$env:USERDNSDOMAIN\SYSVOL\$env:USERDNSDOMAIN\Policies\PolicyDefinitions"
Get-ChildItem -Path $SysvolADMXPath -Filter "*.admx" -Recurse -File | ForEach-Object {
[PSCustomObject]@{
Name = $_.Name
Path = $_.FullName
Size = $_.Length
LastWriteTime = $_.LastWriteTime
}
}
}
+1 -1
View File
@@ -64,7 +64,7 @@
Begin { Begin {
$ForestInformation = Get-WinADForestDetails -Extended -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation $ForestInformation = Get-WinADForestDetails -Extended -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation
if (-not $ADAdministrativeGroups) { if (-not $ADAdministrativeGroups) {
$ADAdministrativeGroups = Get-ADAdministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation $ADAdministrativeGroups = Get-ADADministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation
} }
$Count = 0 $Count = 0
} }
+1 -1
View File
@@ -115,7 +115,7 @@
Begin { Begin {
$ForestInformation = Get-WinADForestDetails -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation -Extended $ForestInformation = Get-WinADForestDetails -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation -Extended
if (-not $ADAdministrativeGroups) { if (-not $ADAdministrativeGroups) {
$ADAdministrativeGroups = Get-ADAdministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation $ADAdministrativeGroups = Get-ADADministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation
} }
if ($Type -eq 'Unknown') { if ($Type -eq 'Unknown') {
if ($SkipAdministrative -or $SkipWellKnown) { if ($SkipAdministrative -or $SkipWellKnown) {
+1 -1
View File
@@ -32,7 +32,7 @@
[Array] $Permissions [Array] $Permissions
) )
if (-not $ADAdministrativeGroups) { if (-not $ADAdministrativeGroups) {
$ADAdministrativeGroups = Get-ADAdministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation $ADAdministrativeGroups = Get-ADADministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation
} }
if (-not $Permissions) { if (-not $Permissions) {
+72
View File
@@ -0,0 +1,72 @@
function Initialize-GPOZaurrTemplate {
[CmdletBinding()]
param(
[Parameter(Mandatory)][string] $Name,
[Parameter(Mandatory)][string] $Path,
[string] $ExportPath
)
$Files = Get-ChildItem -Path $Path -Filter "*.admx" -Recurse -File
$TotalFiles = $Files.Count
$ProgressIncrement = [math]::Ceiling($TotalFiles / 10)
$CurrentProgress = 0
$FullList = foreach ($File in $Files) {
$CurrentProgress++
if ($CurrentProgress % $ProgressIncrement -eq 0) {
Write-Verbose ("Initialize-GPOZaurrTemplate - Processing $Name, template file {0} of {1} ({2}%)" -f $CurrentProgress, $TotalFiles, [math]::Round(($CurrentProgress / $TotalFiles) * 100))
}
$HashInformation = Get-FileHash -LiteralPath $File.FullName
$Directories = Get-ChildItem -Path $File.DirectoryName -Directory
$Languages = [ordered] @{}
foreach ($Directory in $Directories) {
$LanguageFile = [io.path]::Combine($Directory.FullName, $File.BaseName + ".adml")
$Item = Get-Item -Path $LanguageFile -ErrorAction SilentlyContinue
if (Test-Path -Path $LanguageFile) {
$HashInformation = Get-FileHash -LiteralPath $LanguageFile
$Languages[$Directory.Name] = [PSCustomObject]@{
Name = $Directory.Name
Hash = $HashInformation.Hash
Algorithm = $HashInformation.Algorithm
Size = $Item.Length
CreationTimeUtc = $Item.CreationTimeUtc
LastWriteTimeUtc = $Item.LastWriteTimeUtc
}
}
}
[PSCustomObject] @{
Name = $File.Name
Hash = $HashInformation.Hash
Algorithm = $HashInformation.Algorithm
Size = $File.Length
LanguagesAvailable = $Languages.Keys
LanguagesCount = $Languages.Keys.Count
CreationTimeUtc = $File.CreationTimeUtc
LastWriteTimeUtc = $File.LastWriteTimeUtc
LanguageFile = $Languages
}
}
$OutputObject = [PSCustomObject] @{
Name = $Name
Path = $Path
Templates = $FullList
}
if ($ExportPath) {
if ($ExportPath.EndsWith('.xml')) {
$ExportType = 'XML'
} elseif ($ExportPath.EndsWith('.json')) {
$ExportType = 'JSON'
} else {
$ExportType = 'XML'
}
if ($ExportType -eq 'XML') {
$OutputObject | Export-Clixml -Path $ExportPath -ErrorAction Stop
} elseif ($ExportType -eq 'JSON') {
$OutputObject | ConvertTo-Json -Depth 10 | Set-Content -Path $ExportPath -ErrorAction Stop
} else {
Write-Warning "ExportType $ExportType is not supported. Exporting to XML."
}
}
$OutputObject
}
+4 -4
View File
@@ -126,10 +126,6 @@
} }
} }
if (-not $FilePath) {
$FilePath = Get-FileName -Extension 'html' -Temporary -Name "GpoZaurr"
}
# Build data # Build data
foreach ($T in $Script:GPOConfiguration.Keys) { foreach ($T in $Script:GPOConfiguration.Keys) {
if ($Script:GPOConfiguration[$T].Enabled -eq $true) { if ($Script:GPOConfiguration[$T].Enabled -eq $true) {
@@ -205,6 +201,10 @@
if (-not $SplitReports) { if (-not $SplitReports) {
# Generate pretty HTML # Generate pretty HTML
$TimeLogHTML = Start-TimeLog $TimeLogHTML = Start-TimeLog
if (-not $FilePath) {
$FilePath = Get-FileName -Extension 'html' -Temporary
}
New-HTMLReportAll -FilePath $FilePath -Online:$Online -HideHTML:$HideHTML -Type $Type New-HTMLReportAll -FilePath $FilePath -Online:$Online -HideHTML:$HideHTML -Type $Type
$TimeLogEndHTML = Stop-TimeLog -Time $TimeLogHTML -Option OneLiner $TimeLogEndHTML = Stop-TimeLog -Time $TimeLogHTML -Option OneLiner
-37
View File
@@ -59,10 +59,6 @@
Invoke-GPOZaurrContent -GPOPath "CN={31B2F340-016D-11D2-945F-00C04FB984F9},CN=Policies,CN=System,DC=Contoso,DC=com" -Type "All" -OutputType "Object" Invoke-GPOZaurrContent -GPOPath "CN={31B2F340-016D-11D2-945F-00C04FB984F9},CN=Policies,CN=System,DC=Contoso,DC=com" -Type "All" -OutputType "Object"
Retrieves all information for a specific Group Policy Object and outputs the result as an object. Retrieves all information for a specific Group Policy Object and outputs the result as an object.
.EXAMPLE
Invoke-GPOZaurrContent -GPOName "Group Policy Test" -SingleObject | ConvertTo-Json -Depth 3
Quickly view GPO settings by name in JSON format for easy inspection.
#> #>
[alias('Find-GPO')] [alias('Find-GPO')]
[cmdletBinding(DefaultParameterSetName = 'Default')] [cmdletBinding(DefaultParameterSetName = 'Default')]
@@ -287,39 +283,6 @@
} }
} }
} }
if ($Output['Reports']['WindowsDefender']) {
# Defender can be represented by policy categories and raw registry settings.
# Merge entries per GPO so fallback fields do not create duplicated-looking rows.
$MergedWindowsDefender = [System.Collections.Generic.List[PSCustomObject]]::new()
$GroupedWindowsDefender = $Output['Reports']['WindowsDefender'] | Group-Object -Property DisplayName, DomainName, GUID, GpoType
foreach ($Group in $GroupedWindowsDefender) {
$MergedObject = [ordered] @{}
foreach ($Entry in $Group.Group) {
foreach ($Property in $Entry.PSObject.Properties) {
if (-not $MergedObject.Contains($Property.Name)) {
$MergedObject[$Property.Name] = $Property.Value
} else {
$CurrentValue = $MergedObject[$Property.Name]
$CurrentEmpty = $null -eq $CurrentValue -or ($CurrentValue -is [string] -and $CurrentValue -eq '')
$NewEmpty = $null -eq $Property.Value -or ($Property.Value -is [string] -and $Property.Value -eq '')
if ($CurrentEmpty -and -not $NewEmpty) {
$MergedObject[$Property.Name] = $Property.Value
} elseif (-not $CurrentEmpty -and -not $NewEmpty -and "$CurrentValue" -ne "$($Property.Value)") {
$PropertyCounter = 2
$AlternativeName = -join ($Property.Name, "$PropertyCounter")
while ($MergedObject.Contains($AlternativeName)) {
$PropertyCounter++
$AlternativeName = -join ($Property.Name, "$PropertyCounter")
}
$MergedObject[$AlternativeName] = $Property.Value
}
}
}
}
$MergedWindowsDefender.Add([PSCustomObject] $MergedObject)
}
$Output['Reports']['WindowsDefender'] = $MergedWindowsDefender
}
# Normalize - meaning that before we return each GPO report we make sure that each entry has the same column names regardless which one is first. # Normalize - meaning that before we return each GPO report we make sure that each entry has the same column names regardless which one is first.
# Normally if you would have a GPO with just 2 entries for given subject (say LAPS), and then another GPO having 5 settings for the same type # Normally if you would have a GPO with just 2 entries for given subject (say LAPS), and then another GPO having 5 settings for the same type
# and you would display them one after another - all entries would be shown using first object which has less properties then 2nd or 3rd object # and you would display them one after another - all entries would be shown using first object which has less properties then 2nd or 3rd object
+2 -2
View File
@@ -192,9 +192,9 @@
$ForestInformation = Get-WinADForestDetails -Extended -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation $ForestInformation = Get-WinADForestDetails -Extended -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation
if ($LimitAdministrativeGroupsToDomain) { if ($LimitAdministrativeGroupsToDomain) {
# This will get administrative based on IncludeDomains if given. It means that if GPO has Domain admins added from multiple domains it will only find one, and remove all other Domain Admins (if working with Domain Admins that is) # This will get administrative based on IncludeDomains if given. It means that if GPO has Domain admins added from multiple domains it will only find one, and remove all other Domain Admins (if working with Domain Admins that is)
$ADAdministrativeGroups = Get-ADAdministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ForestInformation $ADAdministrativeGroups = Get-ADADministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ForestInformation
} else { } else {
$ADAdministrativeGroups = Get-ADAdministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest #-IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ForestInformation $ADAdministrativeGroups = Get-ADADministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest #-IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ForestInformation
} }
if ($PSCmdlet.ParameterSetName -ne 'Level') { if ($PSCmdlet.ParameterSetName -ne 'Level') {
$Splat = @{ $Splat = @{
+2 -2
View File
@@ -28,11 +28,11 @@
Runs the function online to retrieve the latest Group Policy information. Runs the function online to retrieve the latest Group Policy information.
.EXAMPLE .EXAMPLE
Invoke-GPOZaurrSupport -Type HTML -ComputerName "RemoteComputer" -UserName "Admin" -Path (Join-Path $env:TEMP 'GPOReport.html') Invoke-GPOZaurrSupport -Type HTML -ComputerName "RemoteComputer" -UserName "Admin" -Path "C:\Temp\GPOReport.html"
Retrieves Group Policy information in HTML format from a remote computer and saves it to a specified path. Retrieves Group Policy information in HTML format from a remote computer and saves it to a specified path.
.EXAMPLE .EXAMPLE
Invoke-GPOZaurrSupport -Type XML -Path (Join-Path $env:TEMP 'GPOReport.xml') -Online Invoke-GPOZaurrSupport -Type XML -Path "C:\Temp\GPOReport.xml" -Online
Retrieves the latest Group Policy information in XML format and saves it to a specified path. Retrieves the latest Group Policy information in XML format and saves it to a specified path.
#> #>
+1 -1
View File
@@ -85,7 +85,7 @@
Begin { Begin {
$Count = 0 $Count = 0
$ForestInformation = Get-WinADForestDetails -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation $ForestInformation = Get-WinADForestDetails -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation
$ADAdministrativeGroups = Get-ADAdministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ForestInformation $ADAdministrativeGroups = Get-ADADministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ForestInformation
if ($Type -eq 'Unknown') { if ($Type -eq 'Unknown') {
if ($SkipAdministrative -or $SkipWellKnown) { if ($SkipAdministrative -or $SkipWellKnown) {
Write-Warning "Remove-GPOZaurrPermission - Using SkipAdministrative or SkipWellKnown while looking for Unknown doesn't make sense as only Unknown will be displayed." Write-Warning "Remove-GPOZaurrPermission - Using SkipAdministrative or SkipWellKnown while looking for Unknown doesn't make sense as only Unknown will be displayed."
+1 -1
View File
@@ -97,7 +97,7 @@
[switch] $Force [switch] $Force
) )
Begin { Begin {
$ADAdministrativeGroups = Get-ADAdministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation $ADAdministrativeGroups = Get-ADADministrativeGroups -Type DomainAdmins, EnterpriseAdmins -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation
} }
Process { Process {
$getGPOZaurrOwnerSplat = @{ $getGPOZaurrOwnerSplat = @{
+1 -1
View File
@@ -1,6 +1,6 @@
<p align="center"> <p align="center">
<a href="https://www.powershellgallery.com/packages/GPOZaurr"><img src="https://img.shields.io/powershellgallery/v/GPOZaurr.svg"></a> <a href="https://www.powershellgallery.com/packages/GPOZaurr"><img src="https://img.shields.io/powershellgallery/v/GPOZaurr.svg"></a>
<a href="https://www.powershellgallery.com/packages/GPOZaurr"><img src="https://img.shields.io/powershellgallery/v/GPOZaurr.svg?label=powershell%20gallery%20preview&colorB=yellow&include_prereleases"></a> <a href="https://www.powershellgallery.com/packages/GPOZaurr"><img src="https://img.shields.io/powershellgallery/vpre/GPOZaurr.svg?label=powershell%20gallery%20preview&colorB=yellow"></a>
<a href="https://github.com/EvotecIT/GPOZaurr"><img src="https://img.shields.io/github/license/EvotecIT/GPOZaurr.svg"></a> <a href="https://github.com/EvotecIT/GPOZaurr"><img src="https://img.shields.io/github/license/EvotecIT/GPOZaurr.svg"></a>
</p> </p>
-134
View File
@@ -1,134 +0,0 @@
Describe 'Defender content detection' {
BeforeAll {
Import-Module $PSScriptRoot\..\*.psd1 -Force
}
It 'WindowsDefender dictionary supports old and new categories' {
InModuleScope GPOZaurr {
$Entry = $Script:GPODitionary['WindowsDefender']
$Entry.GPOPath | Should -Contain 'Policies -> Administrative Templates -> Windows Components/Windows Defender'
$Entry.GPOPath | Should -Contain 'Policies -> Administrative Templates -> Windows Components/Microsoft Defender Antivirus'
($Entry.Types | Where-Object { $_.Category -eq 'RegistrySettings' -and $_.Settings -eq 'RegistrySettings' }).Count | Should -BeGreaterOrEqual 1
$Entry.Code.ToString() | Should -Match 'ConvertTo-XMLRegistryDefenderOnReport'
}
}
It 'WindowsDefenderExploitGuard supports category variants' {
InModuleScope GPOZaurr {
$Entry = $Script:GPODitionary['WindowsDefenderExploitGuard']
$Entry.GPOPath | Should -Contain 'Policies -> Administrative Templates -> Windows Components/Windows Defender/Windows Defender Exploit Guard'
$Entry.GPOPath | Should -Contain 'Policies -> Administrative Templates -> Windows Components/Microsoft Defender Antivirus/Microsoft Defender Exploit Guard'
$Entry.Code.ToString() | Should -Match 'Windows Components/Microsoft Defender Antivirus/Windows Defender Exploit Guard\*'
}
}
It 'ConvertTo-XMLRegistryDefenderOnReport returns only Defender registry settings' {
InModuleScope GPOZaurr {
$GPO = [PSCustomObject] @{
DisplayName = 'Test Defender GPO'
DomainName = 'contoso.com'
GUID = '11111111-1111-1111-1111-111111111111'
GpoType = 'Computer'
Linked = $true
LinksCount = 1
Links = @('OU=Workstations,DC=contoso,DC=com')
Settings = @(
[PSCustomObject] @{
Hive = 'HKEY_LOCAL_MACHINE'
Key = 'SOFTWARE\Microsoft\Windows Defender\MpEngine'
Name = 'MpFolderScanThreadCount'
Type = 'REG_DWORD'
Value = '4'
Changed = [datetime] '2026-02-18T11:15:00'
Filters = $null
}
[PSCustomObject] @{
Hive = 'HKEY_LOCAL_MACHINE'
Key = 'SOFTWARE\Contoso\Other'
Name = 'Setting'
Type = 'REG_SZ'
Value = 'Value'
Changed = [datetime] '2026-02-18T11:15:00'
Filters = $null
}
)
}
[Array] $Result = ConvertTo-XMLRegistryDefenderOnReport -GPO $GPO
$Result.Count | Should -Be 1
$Result[0].MpFolderScanThreadCount | Should -Be '4'
$Result[0].MpFolderScanThreadCountRegistryKey | Should -Be 'SOFTWARE\Microsoft\Windows Defender\MpEngine'
}
}
It 'ConvertTo-XMLRegistryDefenderOnReport supports raw DataSet input' {
InModuleScope GPOZaurr {
$GPO = [PSCustomObject] @{
DisplayName = 'Test Defender GPO'
DomainName = 'contoso.com'
GUID = '11111111-1111-1111-1111-111111111111'
GpoType = 'Computer'
Linked = $true
LinksCount = 1
Links = @('OU=Workstations,DC=contoso,DC=com')
DataSet = ([xml] @"
<Root>
<Registry changed='2026-02-18T11:15:00' disabled='0'>
<Properties action='U' hive='HKEY_LOCAL_MACHINE' key='SOFTWARE\Microsoft\Windows Defender\MpEngine' name='MpFolderScanThreadCount' type='REG_DWORD' value='4' />
</Registry>
</Root>
"@).Root.Registry
}
[Array] $Result = ConvertTo-XMLRegistryDefenderOnReport -GPO $GPO
$Result.Count | Should -Be 1
$Result[0].MpFolderScanThreadCount | Should -Be '4'
$Result[0].MpFolderScanThreadCountRegistryKey | Should -Be 'SOFTWARE\Microsoft\Windows Defender\MpEngine'
}
}
It 'ConvertTo-XMLGenericPolicy prefers list item names over zero-only data' {
InModuleScope GPOZaurr {
[xml] $ListValue = @"
<Value>
<Element>
<Name>C:\PathOne</Name>
<Data>0</Data>
</Element>
<Element>
<Name>D:\PathTwo</Name>
<Data>0</Data>
</Element>
</Value>
"@
$GPO = [PSCustomObject] @{
DisplayName = 'Test Defender GPO'
DomainName = 'contoso.com'
GUID = '11111111-1111-1111-1111-111111111111'
GpoType = 'Computer'
Linked = $true
LinksCount = 1
Links = @('OU=Workstations,DC=contoso,DC=com')
DataSet = @(
[PSCustomObject] @{
Category = 'Windows Components/Microsoft Defender Antivirus/Exclusions'
Name = 'Path Exclusions'
State = 'Enabled'
ListBox = @(
[PSCustomObject] @{
Name = 'Path Exclusions'
Value = $ListValue.Value
}
)
}
)
}
$Result = ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'Windows Components/Microsoft Defender Antivirus*'
$Result.PathExclusionsPathExclusions | Should -Match 'C:\\PathOne'
$Result.PathExclusionsPathExclusions | Should -Match 'D:\\PathTwo'
$Result.PathExclusionsPathExclusions | Should -Not -Be '0; 0'
}
}
}
-46
View File
@@ -1,46 +0,0 @@
Describe 'LAPS content detection' {
BeforeAll {
Import-Module $PSScriptRoot\..\*.psd1 -Force
}
It 'LAPS dictionary supports legacy Microsoft LAPS and Windows LAPS categories' {
InModuleScope GPOZaurr {
$Entry = $Script:GPODitionary['LAPS']
$Entry.GPOPath | Should -Contain 'Policies -> Administrative Templates -> LAPS'
$Entry.GPOPath | Should -Contain 'Policies -> Administrative Templates -> System -> LAPS'
$Entry.Code.ToString() | Should -Match 'System/LAPS\*'
$Entry.CodeSingle.ToString() | Should -Match 'System/LAPS\*'
}
}
It 'ConvertTo-XMLGenericPolicy returns Windows LAPS policies from System/LAPS' {
InModuleScope GPOZaurr {
$GPO = [PSCustomObject] @{
DisplayName = 'Windows LAPS GPO'
DomainName = 'contoso.com'
GUID = '11111111-1111-1111-1111-111111111111'
GpoType = 'Computer'
Linked = $true
LinksCount = 1
Links = @('OU=Workstations,DC=contoso,DC=com')
DataSet = @(
[PSCustomObject] @{
Category = 'System/LAPS'
Name = 'Configure password backup directory'
State = 'Enabled'
DropDownList = @(
[PSCustomObject] @{
Name = 'Backup Directory'
Value = 'Active Directory'
}
)
}
)
}
$Result = ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'LAPS', 'System/LAPS*'
$Result.ConfigurePasswordBackupDirectory | Should -Be 'Enabled'
$Result.ConfigurePasswordBackupDirectoryBackupDirectory | Should -Be 'Active Directory'
}
}
}
-19
View File
@@ -1,19 +0,0 @@
# GPOZaurr Website Content
This folder contains curated source content that the Evotec website imports for the GPOZaurr project page.
## Layout
- `content/project-docs/` contains short project documentation pages shown under `/projects/gpozaurr/docs/`.
- `content/examples/` contains curated website examples shown under `/projects/gpozaurr/examples/`.
- `WebsiteArtifacts/` is generated by `Build/Export-WebsiteArtifacts.ps1` at the repository root and is intentionally ignored by Git.
## Editing Rules
- Keep this folder intentional and small.
- Do not mirror the raw `Examples/` folder into the public website.
- Add only examples that have a clear explanation, a small code sample, and a link back to the original source file.
- Keep links rooted at `/projects/gpozaurr/` so the same content works on localhost, `evotec.xyz`, and `evotec.pl`.
- Run `Build/Export-WebsiteArtifacts.ps1` when API artifacts need to be refreshed.
The website pipeline prefers this `Website/content/...` layout over legacy root-level content folders.
-22
View File
@@ -1,22 +0,0 @@
---
title: "GPOZaurr Examples"
description: "Curated examples for common Group Policy administration and cleanup workflows."
layout: docs
---
These GPOZaurr examples focus on practical Group Policy review and backup patterns rather than the full raw example set.
## Featured examples
<div class="ev-example-card-grid">
<a class="ev-example-card" href="./backup-disabled-or-empty-gpos/">
<span class="ev-example-card__eyebrow">Safe cleanup</span>
<h3>Back up disabled or empty GPOs</h3>
<p>Create a focused backup set before removing stale Group Policy Objects.</p>
</a>
<a class="ev-example-card" href="./find-group-policy-permission-issues/">
<span class="ev-example-card__eyebrow">Permission review</span>
<h3>Find Group Policy permission issues</h3>
<p>List permission problems that should be reviewed before remediation work starts.</p>
</a>
</div>
@@ -1,43 +0,0 @@
---
title: "Back up disabled or empty GPOs"
description: "Back up selected Group Policy Objects and verify the resulting backup set."
layout: docs
---
This example shows a practical starting point for cleaning up or reviewing older Group Policy environments before deeper remediation work.
It comes from the source example at `Examples/Example-01-BackupGPOs.ps1`.
## When to use this pattern
- You want to back up stale or disabled GPOs before any cleanup work.
- You need a quick inventory of what was actually exported.
- You want a repeatable backup step before broader Group Policy review.
## Example
```powershell
Import-Module "$PSScriptRoot\..\GPoZaurr.psd1" -Force
$GPOSummary = Backup-GPOZaurr `
-BackupPath "$Env:UserProfile\Desktop\GPO" `
-Verbose `
-Type Disabled, Empty `
-IncludeDomains 'corp.example.com'
$GPOSummary | Format-Table -AutoSize
if ($GPOSummary) {
Get-GPOZaurrBackupInformation -BackupFolder $GPOSummary[0].BackupDirectory | Format-Table -AutoSize
}
```
## What this demonstrates
- targeted GPO backup instead of exporting everything blindly
- focusing on disabled or empty policies first
- validating the produced backup set after the export
## Source
- [Example-01-BackupGPOs.ps1](https://github.com/EvotecIT/GPOZaurr/blob/master/Examples/Example-01-BackupGPOs.ps1)
@@ -1,34 +0,0 @@
---
title: "Find Group Policy permission issues"
description: "Use GPOZaurr to list permission problems that should be reviewed before cleanup or remediation."
layout: docs
---
This example is a practical first pass for environments where Group Policy permissions have changed over time and nobody is fully sure what still matches the intended model.
It comes from the source example at `Examples/Example-08-ListingPermissionIssues.ps1`.
## When to use this pattern
- You want to identify GPO permission problems before making changes.
- You need evidence for a cleanup or remediation plan.
- You want a small, repeatable report that can be reviewed by the directory operations team.
## Example
```powershell
Import-Module "$PSScriptRoot\..\GPoZaurr.psd1" -Force
$Issues = Get-GPOZaurrPermissionIssue
$Issues | Format-Table -AutoSize
```
## What this demonstrates
- separating discovery from remediation
- getting a reviewable list of permission issues
- creating a safer starting point for Group Policy cleanup
## Source
- [Example-08-ListingPermissionIssues.ps1](https://github.com/EvotecIT/GPOZaurr/blob/master/Examples/Example-08-ListingPermissionIssues.ps1)

Some files were not shown because too many files have changed in this diff Show More