Compare commits

...

29 Commits

Author SHA1 Message Date
lbcdwruck efc7743906 Fixed DateRange Filter (#90) 2026-07-03 09:14:13 +02:00
Przemysław Kłys 4f95563119 update 2026-05-22 15:51:02 +02:00
Przemysław Kłys 055391454d update versions 2026-05-22 15:50:44 +02:00
Przemysław Kłys ecef7a7f16 update docs 2026-05-22 15:50:38 +02:00
Przemysław Kłys f7bdaca724 docs: ✏️ Update documentation for GPOZaurr module
- Revised `Set-GPOZaurrOwner.md` to enhance clarity and detail for parameters and examples.
- Updated `Set-GPOZaurrStatus.md` with a new online version link and improved structure.
- Refined `Skip-GroupPolicy.md` to clarify usage within script blocks and added examples.
- Adjusted `GPOZaurr.psd1` for version updates and improved module dependencies.
- Enhanced `GPOZaurr.psm1` for better error handling during function imports.
- Modified `Invoke-GPOZaurrSupport.ps1` examples to use `Join-Path` for path construction.
2026-05-19 18:47:50 +02:00
Przemysław Kłys b672783a3f Merge branch 'master' of https://github.com/EvotecIT/GPOZaurr 2026-05-19 18:44:41 +02:00
Przemysław Kłys 3187693a1b Support Windows LAPS policies in LAPS report 2026-05-19 16:46:41 +02:00
Przemysław Kłys 2ddc7b2c07 Update curated website materials 2026-04-12 16:58:37 +02:00
Przemysław Kłys e8205302e3 Standardize website content layout 2026-04-11 10:13:28 +02:00
Przemysław Kłys 043ce35deb Handle tolerated website artifact build failures 2026-04-11 09:58:13 +02:00
Przemysław Kłys 7f0e544b74 Add curated website docs and examples 2026-04-11 09:54:03 +02:00
Przemysław Kłys 6bfa63ae68 self-contain AD administrative groups helper (#87) 2026-04-02 14:02:33 +02:00
Przemysław Kłys 6624efa9bc Add command metadata to website artifact export 2026-03-08 17:13:56 +01:00
Przemysław Kłys e10e01a17b Prefer local PowerForge module for website artifacts (#86)
* Prefer local PowerForge module for website artifacts

* Ignore generated website artifact outputs
2026-03-07 18:29:44 +01:00
Przemysław Kłys fe8ba6414c Merge pull request #84 from EvotecIT/fix/81-defender-detection
Fix Defender detection for modern ADMX categories and registry-only settings
2026-02-25 11:47:08 +01:00
Przemysław Kłys 98e93aa07d Refine Defender output merge and list parsing for issue #81 feedback 2026-02-24 14:28:47 +01:00
Przemysław Kłys 707c0ed4b2 Address PR feedback: make Defender fallback work without RegistrySettings type 2026-02-18 11:48:10 +01:00
Przemysław Kłys 3a69d14354 Fix Defender policy detection for new ADMX paths and add registry fallback (#81) 2026-02-18 11:39:31 +01:00
Przemysław Kłys 37f15fadf1 Merge pull request #83 from EvotecIT/chore/fix-powershell-preview-badge
Fix PowerShell Gallery preview badge
2026-02-14 21:35:07 +01:00
Przemysław Kłys c8c537e1f2 Fix PowerShell Gallery preview badge (include prereleases) 2026-02-14 21:34:10 +01:00
Przemysław Kłys 95789953a8 fix: 🐛 update copyright year and module versions
* Updated copyright year from 2024 to 2025.
* Incremented `ModuleVersion` from `1.1.9` to `1.1.10`.
* Updated dependencies' module versions:
  - `PSWriteColor` from `1.0.1` to `1.0.3`
  - `PSSharedGoods` from `0.0.301` to `0.0.312`
  - `ADEssentials` from `0.0.226` to `0.0.267`
* Refactored `Foreach` to `foreach` for consistency in `GPOZaurr.psm1`.
2025-12-05 08:45:58 +01:00
Przemysław Kłys 927ae5cd15 fix: 🐛 correct typo in 'Blocked Inhertiance' to 'Blocked Inheritance'
* Updated comments in `Example-36-FindBlockedInheritance.ps1` for clarity.
* Fixed spelling error in `Invoke.GPOZaurrBlockedInheritance.ps1`.
2025-12-04 08:33:11 +01:00
Przemyslaw Klys 26ecff620c fix typo 2025-08-16 08:15:09 +02:00
Przemysław Kłys 4358edfd8f Merge pull request #73 from ehmiiz/Invoke-GPOZaurrContent-docs-update
Update Invoke-GPOZaurrContent documentation and add new example
2025-02-19 17:38:38 +01:00
elarsson 31c7e9d817 Update Invoke-GPOZaurrContent documentation and add new example
- Enhance documentation for Invoke-GPOZaurrContent cmdlet with detailed parameter descriptions
- Add comprehensive parameter explanations and default values
- Include a new example demonstrating GPO retrieval by name with JSON conversion
- Update parameter set to include GPOName and GPOGUID parameters
2025-02-18 15:06:53 +01:00
Przemyslaw Klys 6718b35aaf Comment out self-import in module build configuration 2024-12-02 23:01:46 +01:00
Przemyslaw Klys 808af75ab9 Update module dependencies and version numbers 2024-12-02 22:57:14 +01:00
Przemyslaw Klys 6745e547a4 Update changelog 2024-12-02 22:54:24 +01:00
Przemyslaw Klys 642c4844a5 Add default file path handling for HTML report generation, fixes #58 2024-12-02 22:53:34 +01:00
98 changed files with 10697 additions and 11254 deletions
+2
View File
@@ -6,3 +6,5 @@ ReleasesUnpacked/*
*.log *.log
*.html *.html
Artefacts/* Artefacts/*
WebsiteArtifacts/
en-US/
@@ -1,6 +1,4 @@
Clear-Host Build-Module -ModuleName 'GPOZaurr' {
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.
@@ -27,17 +25,10 @@ Invoke-ModuleBuild -ModuleName 'GPOZaurr' {
} }
New-ConfigurationManifest @Manifest New-ConfigurationManifest @Manifest
New-ConfigurationModule -Type RequiredModule -Name 'PSWriteColor', 'PSSharedGoods', 'ADEssentials', 'PSWriteHTML' -Guid Auto -Version Latest New-ConfigurationModule -Type RequiredModule -Name 'PSWriteColor', 'PSSharedGoods', 'ADEssentials' -Guid Auto -Version Latest -VersionSource PSGallery
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'
@@ -48,6 +39,7 @@ Invoke-ModuleBuild -ModuleName 'GPOZaurr' {
'NetConnection' 'NetConnection'
'NetSecurity' 'NetSecurity'
'NetTCPIP' 'NetTCPIP'
'CimCmdlets'
) -IgnoreFunctionName @( ) -IgnoreFunctionName @(
'Select-Unique' 'Select-Unique'
) )
@@ -207,9 +199,9 @@ Invoke-ModuleBuild -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:$false -StartClean -UpdateWhenNew -PathReadme 'Docs\Readme.md' -Path 'Docs' New-ConfigurationDocumentation -Enable:$true -StartClean -UpdateWhenNew -SyncExternalHelpToProjectRoot -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'
@@ -219,6 +211,8 @@ Invoke-ModuleBuild -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 GitHub -FilePath 'C:\Support\Important\GitHubAPI.txt' -UserName 'EvotecIT' -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 -GenerateReleaseNotes
} -ExitCode } -ExitCode
+253
View File
@@ -0,0 +1,253 @@
[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
}
+10
View File
@@ -1,5 +1,15 @@
# 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
+9 -92
View File
@@ -1,20 +1,16 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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
@@ -22,104 +18,25 @@ Add-GPOPermission [[-Type] <String>] [[-IncludePermissionType] <GPPermissionType
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} Add-GPOPermission
``` ```
{{ 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
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+9 -315
View File
@@ -1,47 +1,16 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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
### GPOName (Default) Add-GPOZaurrPermission
```
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
@@ -49,300 +18,25 @@ Add-GPOZaurrPermission -ADObject <ADObject[]> [-Type <String>] [-Principal <Stri
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} Add-GPOZaurrPermission
``` ```
{{ 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
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+106 -132
View File
@@ -1,21 +1,17 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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] <Int32>] [[-Type] <String[]>] [[-Forest] <String>] Backup-GPOZaurr [[-LimitProcessing] <int>] [[-Type] <string[]>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-BackupPath] <string>] [-BackupDated] [-WhatIf] [-Confirm] [<CommonParameters>]
[[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>]
[[-BackupPath] <String>] [-BackupDated] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -24,110 +20,35 @@ Provides Backup functionality to Group Policies
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
``` ```powershell
$GPOSummary = Backup-GPOZaurr -BackupPath "$Env:UserProfile\Desktop\GPO" -Verbose -Type All PS > $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
$GPOSummary = Backup-GPOZaurr -BackupPath "$Env:UserProfile\Desktop\GPO" -Verbose -Type All -BackupDated PS > $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
### -LimitProcessing ### -BackupDated
Limits amount of GPOs that are backed up 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 ```yaml
Type: Int32 Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: named
Default value: 0 Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
```
### -Type
Provides a way to backup only Empty or Unlinked GPOs.
The default is All.
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: All
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: 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
``` ```
### -BackupPath ### -BackupPath
@@ -135,61 +56,111 @@ Path where to keep the backup
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 7 Position: 6
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -BackupDated ### -ExcludeDomains
Whether cmdlet should created Dated folders for executed backup or not. Exclude domain from search, by default whole forest is scanned
Keep in mind it's not nessecary and two backups made to same folder have their dates properly tagged
```yaml ```yaml
Type: SwitchParameter Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: Named Position: 3
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 Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -Confirm ### -ExtendedForestInformation
Prompts you for confirmation before running the cmdlet. Ability to provide Forest Information from another command to speed up processing
```yaml ```yaml
Type: SwitchParameter Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: cf Aliases:
Possible values:
Required: False Required: False
Position: Named Position: 5
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: 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
```
### -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
```
### -LimitProcessing
Limits amount of GPOs that are backed up
```yaml
Type: Int32
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 0
Default value: 0
Accept pipeline input: False
Accept wildcard characters: True
```
### -Type
Provides a way to backup only Empty or Unlinked GPOs. The default is All.
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values: Empty, Unlinked, Disabled, All
Required: False
Position: 1
Default value: All
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -197,9 +168,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+55 -75
View File
@@ -1,187 +1,166 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Clear-GPOZaurrSysvolDFSR # Clear-GPOZaurrSysvolDFSR
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Clears the ConflictAndDeleted folder in DFSR for specified GPOs.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Clear-GPOZaurrSysvolDFSR [[-Forest] <String>] [[-ExcludeDomains] <String[]>] Clear-GPOZaurrSysvolDFSR [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-ExcludeDomainControllers] <string[]>] [[-IncludeDomains] <string[]>] [[-IncludeDomainControllers] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-LimitProcessing] <int>] [-SkipRODC] [-WhatIf] [-Confirm] [<CommonParameters>]
[[-ExcludeDomainControllers] <String[]>] [[-IncludeDomains] <String[]>]
[[-IncludeDomainControllers] <String[]>] [-SkipRODC] [[-ExtendedForestInformation] <IDictionary>]
[[-LimitProcessing] <Int32>] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Clear-GPOZaurrSysvolDFSR -Forest "contoso.com" -IncludeDomains "child.contoso.com" -ExcludeDomainControllers "dc1.contoso.com" -SkipRODC
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
{{ Fill ExcludeDomainControllers Description }} Specifies an array of domain controllers to exclude from the cleanup process.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExcludeDomains ### -ExcludeDomains
{{ Fill ExcludeDomains Description }} Specifies an array of domains to exclude from the cleanup process.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional forest information if needed.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest name where the GPOs are located.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomainControllers ### -IncludeDomainControllers
{{ Fill IncludeDomainControllers Description }} Specifies an array of domain controllers to include in the cleanup process.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domains to include in the cleanup process.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -LimitProcessing ### -LimitProcessing
{{ Fill LimitProcessing Description }} Specifies the maximum number of GPOs to process.
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 6 Position: 6
Default value: None Default value: 2147483647
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -SkipRODC ### -SkipRODC
{{ Fill SkipRODC Description }} Indicates whether Read-Only Domain Controllers (RODCs) should be skipped during cleanup.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
```
### -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
@@ -189,11 +168,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+30 -22
View File
@@ -1,63 +1,70 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# ConvertFrom-CSExtension # ConvertFrom-CSExtension
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Converts Client-side Extension (CSE) GUIDs to their corresponding names.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
ConvertFrom-CSExtension [[-CSE] <String[]>] [-Limited] [<CommonParameters>] ConvertFrom-CSExtension [[-CSE] <string[]>] [-Limited] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > ConvertFrom-CSExtension -CSE '{35378EAC-683F-11D2-A89A-00C04FBBCFA2}', '{0F6B957E-509E-11D1-A7CC-0000F87571E3}' -Limited
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
{{ Fill CSE Description }} Specifies an array of Client-side Extension (CSE) GUIDs to be converted to names.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Limited ### -Limited
{{ Fill Limited Description }} Indicates whether the conversion should be limited to a predefined set of CSE GUIDs.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -65,11 +72,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+25 -22
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: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Export-GPOZaurrContent # Export-GPOZaurrContent
## SYNOPSIS ## SYNOPSIS
Saves GPOs to XML or HTML files. Exports Group Policy Objects (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
Saves GPOs to XML or HTML files. This function exports GPOs to either XML or HTML files based on the specified parameters.
## 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
The folder where the GPOs will be saved. Specifies the folder path where the exported GPO files will be saved.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Path Aliases: Path
Possible values:
Required: True Required: True
Position: 1 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -ReportType ### -ReportType
The type of report to generate. Specifies the type of report to generate. Valid values are XML or HTML. The default value is XML.
Valid values are XML or HTML.
Default is XML.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values: XML, HTML
Required: False Required: False
Position: 2 Position: 1
Default value: XML Default value: XML
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -65,9 +65,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+40 -32
View File
@@ -1,63 +1,70 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Find-CSExtension # Find-CSExtension
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} This function retrieves Group Policy Client Side Extensions (CSEs) from a specified Windows computer.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Find-CSExtension [[-CSE] <String[]>] [[-ComputerName] <String>] [<CommonParameters>] Find-CSExtension [[-CSE] <string[]>] [[-ComputerName] <string>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Find-CSExtension -ComputerName "Computer01"
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
### -CSE
{{ Fill CSE Description }}
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ComputerName ### -ComputerName
{{ Fill ComputerName Description }} Specifies the name of the computer from which to retrieve the CSE information.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
```
### -CSE
Specifies an array of CSE names to filter the results. If not provided, all CSEs will be listed.
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -65,11 +72,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+149 -142
View File
@@ -1,135 +1,67 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurr # Get-GPOZaurr
## SYNOPSIS ## SYNOPSIS
Gets information about all Group Policies. Gets information about all Group Policies. Similar to what Get-GPO provides by default.
Similar to what Get-GPO provides by default.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Get-GPOZaurr [[-ExcludeGroupPolicies] <ScriptBlock>] [[-GPOName] <String>] [[-GPOGuid] <String>] 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>]
[[-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. Gets information about all Group Policies. Similar to what Get-GPO provides by default.
Similar to what Get-GPO provides by default.
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
``` ```powershell
$GPOs = Get-GPOZaurr PS > $GPOs = Get-GPOZaurr
$GPOs | Format-Table DisplayName, Owner, OwnerSID, OwnerType
``` ```
$GPOs | Format-Table DisplayName, Owner, OwnerSID, OwnerType
### EXAMPLE 2 ### EXAMPLE 2
``` ```powershell
$GPO = Get-GPOZaurr -GPOName 'ALL | Allow use of biometrics' PS > $GPO = Get-GPOZaurr -GPOName 'ALL | Allow use of biometrics'
$GPO | Format-List *
``` ```
$GPO | Format-List *
### EXAMPLE 3 ### EXAMPLE 3
``` ```powershell
$GPOS = Get-GPOZaurr -ExcludeGroupPolicies { PS > $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
### -ExcludeGroupPolicies ### -ADAdministrativeGroups
Marks the GPO as excluded from the list. Ability to provide ADAdministrativeGroups from different function to speed up processing
```yaml ```yaml
Type: ScriptBlock Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: 9
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
```
### -GPOName
Provide a GPOName to get information about a specific GPO.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -GPOGuid
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
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: None
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: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -ExcludeDomains
@@ -137,29 +69,31 @@ Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 6 Position: 5
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -ExcludeGroupPolicies
Include only specific domains, by default whole forest is scanned Marks the GPO as excluded from the list.
```yaml ```yaml
Type: String[] Type: ScriptBlock
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Domain, Domains Aliases:
Possible values:
Required: False Required: False
Position: 7 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
@@ -167,14 +101,63 @@ Ability to provide Forest Information from another command to speed up processin
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 8 Position: 7
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: 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
Provide a GPOName to get information about a specific GPO.
```yaml
Type: String
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### -GPOPath ### -GPOPath
@@ -182,44 +165,31 @@ Define GPOPath where the XML files are located to be analyzed instead of asking
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 9 Position: 8
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -PermissionsOnly ### -IncludeDomains
Only show permissions, by default all information is shown Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: SwitchParameter Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases: Domain, Domains
Possible values:
Required: False Required: False
Position: Named Position: 6
Default value: False Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
```
### -OwnerOnly
only show owner information, by default all information is shown
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -Limited ### -Limited
@@ -227,29 +197,63 @@ Provide limited output without analyzing XML data
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ADAdministrativeGroups ### -OwnerOnly
Ability to provide ADAdministrativeGroups from different function to speed up processing only show owner information, by default all information is shown
```yaml ```yaml
Type: IDictionary Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 10 Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
```
### -PermissionsOnly
Only show permissions, by default all information is shown
```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
Choose a specific type of GPO. Options are: 'Empty', 'Unlinked', 'Disabled', 'NoApplyPermission', 'All'. Default is All.
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values: Empty, Unlinked, Disabled, NoApplyPermission, All
Required: False
Position: 3
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -257,9 +261,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+82 -65
View File
@@ -1,202 +1,218 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrAD # Get-GPOZaurrAD
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Retrieves Group Policy Objects (GPOs) information from Active Directory.
## SYNTAX ## SYNTAX
### Default (Default) ### Default (Default)
``` ```powershell
Get-GPOZaurrAD [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] Get-GPOZaurrAD [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-DateFrom <datetime>] [-DateTo <datetime>] [-DateRange <string>] [-DateProperty <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
[-DateFrom <DateTime>] [-DateTo <DateTime>] [-DateRange <String>] [-DateProperty <String[]>]
[-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
``` ```
### GPOName ### GPOName
``` ```powershell
Get-GPOZaurrAD [-GPOName <String>] [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] Get-GPOZaurrAD [-GPOName <string>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-DateFrom <datetime>] [-DateTo <datetime>] [-DateRange <string>] [-DateProperty <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
[-DateFrom <DateTime>] [-DateTo <DateTime>] [-DateRange <String>] [-DateProperty <String[]>]
[-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
``` ```
### GPOGUID ### GPOGUID
``` ```powershell
Get-GPOZaurrAD [-GPOGuid <String>] [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] Get-GPOZaurrAD [-GPOGuid <string>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-DateFrom <datetime>] [-DateTo <datetime>] [-DateRange <string>] [-DateProperty <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
[-DateFrom <DateTime>] [-DateTo <DateTime>] [-DateRange <String>] [-DateProperty <String[]>]
[-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Get-GPOZaurrAD -GPOName "ExampleGPO"
``` ```
{{ Add example description here }} Description:
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
{{ Fill DateFrom Description }} Specifies the start date for filtering GPOs based on creation or modification date.
```yaml ```yaml
Type: DateTime Type: DateTime
Parameter Sets: (All) Parameter Sets: Default, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### -DateProperty ### -DateProperty
{{ Fill DateProperty Description }} Specifies the property (WhenCreated or WhenChanged) to use for filtering GPOs based on date.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: Default, GPOName, GPOGUID
Aliases: Aliases:
Accepted values: WhenCreated, WhenChanged Possible values: WhenCreated, WhenChanged
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: False Accept wildcard characters: True
``` ```
### -DateRange ### -DateRange
{{ Fill DateRange Description }} Specifies a predefined date range for filtering GPOs based on creation or modification date.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: Default, GPOName, GPOGUID
Aliases: Aliases:
Accepted values: PastHour, CurrentHour, PastDay, CurrentDay, PastMonth, CurrentMonth, PastQuarter, CurrentQuarter, Last14Days, Last21Days, Last30Days, Last7Days, Last3Days, Last1Days Possible 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: False Accept wildcard characters: True
``` ```
### -DateTo ### -DateTo
{{ Fill DateTo Description }} Specifies the end date for filtering GPOs based on creation or modification date.
```yaml ```yaml
Type: DateTime Type: DateTime
Parameter Sets: (All) Parameter Sets: Default, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### -ExcludeDomains ### -ExcludeDomains
{{ Fill ExcludeDomains Description }} Specifies an array of domains to exclude from the search.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: Default, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional forest information to include in the output.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: Default, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest name to search for GPOs.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: Default, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### -GPOGuid ### -GPOGuid
{{ Fill GPOGuid Description }} Specifies the GUID of the GPO to retrieve.
```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: False Accept wildcard characters: True
``` ```
### -GPOName ### -GPOName
{{ Fill GPOName Description }} Specifies the name of the GPO to retrieve.
```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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domains to include in the search.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: Default, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -204,11 +220,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+26 -17
View File
@@ -1,48 +1,56 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrBackupInformation # Get-GPOZaurrBackupInformation
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Retrieves backup information from GPOZaurr manifest files.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Get-GPOZaurrBackupInformation [[-BackupFolder] <String[]>] [<CommonParameters>] Get-GPOZaurrBackupInformation [[-BackupFolder] <string[]>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the Description }} This function retrieves backup information from GPOZaurr manifest files located in the specified BackupFolder(s).
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Get-GPOZaurrBackupInformation -BackupFolder "C:\Backups"
``` ```
{{ Add example description here }} Description:
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
{{ Fill BackupFolder Description }} Specifies the path(s) to the folder containing GPOZaurr manifest files.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -50,11 +58,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+96 -91
View File
@@ -1,21 +1,17 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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[]>] Get-GPOZaurrBroken [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-ExcludeDomainControllers] <string[]>] [[-IncludeDomains] <string[]>] [[-IncludeDomainControllers] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-SkipRODC] [-VerifyDomainControllers] [<CommonParameters>]
[[-IncludeDomains] <String[]>] [[-IncludeDomainControllers] <String[]>] [-SkipRODC]
[[-ExtendedForestInformation] <IDictionary>] [-VerifyDomainControllers] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -30,25 +26,27 @@ It provides few statuses:
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
```powershell
PS > Get-GPOZaurrBroken -Verbose | Format-Table
``` ```
Get-GPOZaurrBroken -Verbose | Format-Table
```
## PARAMETERS ## PARAMETERS
### -Forest ### -ExcludeDomainControllers
Target different Forest, by default current forest is used Exclude specific domain controllers, by default there are no exclusions, as long as VerifyDomainControllers switch is enabled. Otherwise this parameter is ignored.
```yaml ```yaml
Type: String Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: ForestName 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: False Accept wildcard characters: True
``` ```
### -ExcludeDomains ### -ExcludeDomains
@@ -56,77 +54,15 @@ Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
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: False Accept wildcard characters: True
```
### -ExcludeDomainControllers
Exclude specific domain controllers, by default there are no exclusions, as long as VerifyDomainControllers switch is enabled.
Otherwise this parameter is ignored.
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
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: 4
Default value: None
Accept pipeline input: False
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
Skip Read-Only Domain Controllers.
By default all domain controllers are included.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
@@ -134,14 +70,79 @@ Ability to provide Forest Information from another command to speed up processin
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 6 Position: 5
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: 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
Type: String[]
Parameter Sets: __AllParameterSets
Aliases: DomainControllers
Possible values:
Required: False
Position: 4
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: __AllParameterSets
Aliases: Domain, Domains
Possible values:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -SkipRODC
Skip Read-Only Domain Controllers. By default all domain controllers are included.
```yaml
Type: SwitchParameter
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### -VerifyDomainControllers ### -VerifyDomainControllers
@@ -149,14 +150,15 @@ Forces cmdlet to check GPO Existance on Domain Controllers rather then per domai
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -164,9 +166,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+55 -49
View File
@@ -1,20 +1,17 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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[]>] Get-GPOZaurrBrokenLink [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>]
[[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -23,60 +20,33 @@ 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
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: (All)
Aliases: ForestName
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains ### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
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: False Accept wildcard characters: True
```
### -IncludeDomains
Include only specific domains, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Domain, Domains
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
@@ -84,14 +54,47 @@ Ability to provide Forest Information from another command to speed up processin
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: 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: 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
```
### -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: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -99,9 +102,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+25 -18
View File
@@ -1,48 +1,54 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrDictionary # Get-GPOZaurrDictionary
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Retrieves a dictionary of Group Policy Objects (GPOs) with their associated types and paths.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Get-GPOZaurrDictionary [[-Splitter] <String>] [<CommonParameters>] Get-GPOZaurrDictionary [[-Splitter] <string>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Get-GPOZaurrDictionary
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
{{ Fill Splitter Description }} Specifies the delimiter used to separate multiple types or paths. Default value is [System.Environment]::NewLine.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: [System.Environment]::NewLine
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -50,11 +56,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+31 -27
View File
@@ -1,94 +1,97 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrDuplicateObject # Get-GPOZaurrDuplicateObject
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Retrieves duplicate Group Policy Objects (GPOs) within a specified forest.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Get-GPOZaurrDuplicateObject [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>] Get-GPOZaurrDuplicateObject [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>]
[[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the Description }} This function retrieves duplicate Group Policy Objects (GPOs) within a specified forest by comparing GPOs based on partial distinguished name matching.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Get-GPOZaurrDuplicateObject -Forest "contoso.com" -IncludeDomains "child1.contoso.com", "child2.contoso.com" -ExcludeDomains "child3.contoso.com" -ExtendedForestInformation $additionalInfo
``` ```
{{ Add example description here }} Description
-----------
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
{{ Fill ExcludeDomains Description }} Specifies an array of domain names to exclude from the search for duplicate GPOs.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional information about the forest to aid in the search for duplicate GPOs.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the name of the forest to search for duplicate GPOs.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domain names to include in the search for duplicate GPOs.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -96,11 +99,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+69 -57
View File
@@ -1,187 +1,198 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrFiles # Get-GPOZaurrFiles
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Retrieves information about Group Policy Objects (GPOs) stored in SYSVOL and NETLOGON folders.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Get-GPOZaurrFiles [[-Type] <String[]>] [[-HashAlgorithm] <String>] [-Signature] [-AsHashTable] [-Extended] Get-GPOZaurrFiles [[-Type] <string[]>] [[-HashAlgorithm] <string>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-Signature] [-AsHashTable] [-Extended] [-ExtendedMetaData] [<CommonParameters>]
[-ExtendedMetaData] [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>]
[[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Get-GPOZaurrFiles -Type 'All' -HashAlgorithm 'SHA256' -Signature
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
{{ Fill AsHashTable Description }} Indicates whether to return the results as a hashtable.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExcludeDomains ### -ExcludeDomains
{{ Fill ExcludeDomains Description }} Specifies an array of domains to exclude from the search.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Extended ### -Extended
{{ Fill Extended Description }} Indicates whether to include extended information about the forest.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional forest information to include.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExtendedMetaData ### -ExtendedMetaData
{{ Fill ExtendedMetaData Description }} Indicates whether to include extended metadata information.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest name to retrieve GPO information from.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -HashAlgorithm ### -HashAlgorithm
{{ Fill HashAlgorithm Description }} Specifies the hash algorithm to use for file verification. Valid values are 'None', 'MACTripleDES', 'MD5', 'RIPEMD160', 'SHA1', 'SHA256', 'SHA384', 'SHA512'.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: None, MACTripleDES, MD5, RIPEMD160, SHA1, SHA256, SHA384, SHA512 Possible 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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domains to include in the search.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Signature ### -Signature
{{ Fill Signature Description }} Indicates whether to include file signatures for verification.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Type ### -Type
{{ Fill Type Description }} Specifies the type of files to retrieve. Valid values are 'All', 'Netlogon', and 'Sysvol'.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: All, Netlogon, Sysvol Possible values: All, Netlogon, Sysvol
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: All
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -189,11 +200,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+35 -32
View File
@@ -1,109 +1,111 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrFilesPolicyDefinition # Get-GPOZaurrFilesPolicyDefinition
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Retrieves policy definitions for Group Policy Objects (GPOs) within specified domains.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Get-GPOZaurrFilesPolicyDefinition [[-Forest] <String>] [[-ExcludeDomains] <String[]>] Get-GPOZaurrFilesPolicyDefinition [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-Signature] [<CommonParameters>]
[[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>] [-Signature] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the Description }} This function retrieves policy definitions for GPOs within specified domains. It collects information about policy files, including their attributes and digital signatures.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Get-GPOZaurrFilesPolicyDefinition -Forest "contoso.com" -IncludeDomains "domain1", "domain2" -ExcludeDomains "domain3" -Signature
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
{{ Fill ExcludeDomains Description }} Specifies an array of domains to exclude from the search.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional forest information to include in the output.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest name to retrieve GPO policy definitions from.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domains to include in the search.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Signature ### -Signature
{{ Fill Signature Description }} Indicates whether to retrieve digital signature information for policy files.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -111,11 +113,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+52 -43
View File
@@ -1,142 +1,150 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrFolders # Get-GPOZaurrFolders
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Retrieves information about GPO folders within specified domains.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Get-GPOZaurrFolders [[-Type] <String[]>] [[-FolderType] <String>] [[-Forest] <String>] Get-GPOZaurrFolders [[-Type] <string[]>] [[-FolderType] <string>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-AsHashTable] [<CommonParameters>]
[[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>]
[-AsHashTable] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Get-GPOZaurrFolders -Type All -FolderType All -Forest 'example.com' -IncludeDomains 'domain1', 'domain2' -ExcludeDomains 'domain3' -ExtendedForestInformation $info -AsHashTable
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
{{ Fill AsHashTable Description }} Indicates whether to return the output as a hashtable.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExcludeDomains ### -ExcludeDomains
{{ Fill ExcludeDomains Description }} Specifies domains to exclude from the retrieval.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional information about the forest.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -FolderType ### -FolderType
{{ Fill FolderType Description }} Specifies the type of folders to retrieve. Valid values are 'All', 'NTFRS', 'Empty'.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: All, NTFRS, Empty Possible values: All, NTFRS, Empty
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: All
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest name to retrieve information for.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies domains to include in the retrieval.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Type ### -Type
{{ Fill Type Description }} Specifies the type of folders to retrieve. Valid values are 'All', 'Netlogon', 'Sysvol'.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: All, Netlogon, Sysvol Possible values: All, Netlogon, Sysvol
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: All
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -144,11 +152,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+120 -116
View File
@@ -1,174 +1,175 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrInheritance # Get-GPOZaurrInheritance
## SYNOPSIS ## SYNOPSIS
Short description Retrieves inheritance information for Group Policy Objects (GPOs) within specified Organizational Units (OUs).
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Get-GPOZaurrInheritance [-IncludeBlockedObjects] [-OnlyBlockedInheritance] [-IncludeExcludedObjects] Get-GPOZaurrInheritance [[-Exclusions] <string[]>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-IncludeBlockedObjects] [-OnlyBlockedInheritance] [-IncludeExcludedObjects] [-IncludeGroupPoliciesForBlockedObjects] [<CommonParameters>]
[-IncludeGroupPoliciesForBlockedObjects] [[-Exclusions] <String[]>] [[-Forest] <String>]
[[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
Long 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.
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
``` ```powershell
$Objects = Get-GPOZaurrInheritance -IncludeBlockedObjects -IncludeExcludedObjects -OnlyBlockedInheritance -Exclusions $ExcludedOU PS > $Objects = Get-GPOZaurrInheritance -IncludeBlockedObjects -IncludeExcludedObjects -OnlyBlockedInheritance -Exclusions $ExcludedOU
$Objects | Format-Table
``` ```
$Objects | Format-Table
## PARAMETERS ## PARAMETERS
### -IncludeBlockedObjects ### -ExcludeDomains
Include OU's with blocked inheritance. Specifies the domain to exclude from the search. By default, the entire forest is scanned.
Default disabled
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
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
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: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False
Position: 1
Default value: None
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 Required: False
Position: 2 Position: 2
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -ExcludeDomains ### -Exclusions
Exclude domain from search, by default whole forest is scanned Specifies the OUs approved by IT to be excluded. You can provide OUs by canonical name or distinguishedName.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 3 Position: 0
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -ExtendedForestInformation
Include only specific domains, by default whole forest is scanned Allows providing Forest Information from another command to speed up processing.
```yaml ```yaml
Type: String[] Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Domain, Domains 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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -Forest
Ability to provide Forest Information from another command to speed up processing Specifies the target forest. By default, the current forest is used.
```yaml ```yaml
Type: IDictionary Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases: ForestName
Possible values:
Required: False Required: False
Position: 5 Position: 1
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
```
### -IncludeBlockedObjects
Specifies whether to include OUs with blocked inheritance. By default, this is disabled.
```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
Specifies specific domains to include. By default, the entire forest is scanned.
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases: Domain, Domains
Possible values:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -IncludeExcludedObjects
Specifies whether to show excluded objects. By default, this is disabled.
```yaml
Type: SwitchParameter
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
```
### -IncludeGroupPoliciesForBlockedObjects
Specifies whether to include Group Policies for blocked objects. By default, this is disabled.
```yaml
Type: SwitchParameter
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
```
### -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
@@ -176,9 +177,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+29 -27
View File
@@ -1,94 +1,95 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrLegacyFiles # Get-GPOZaurrLegacyFiles
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Retrieves legacy Group Policy Object (GPO) files from the SYSVOL directory of specified domains within a forest.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Get-GPOZaurrLegacyFiles [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>] Get-GPOZaurrLegacyFiles [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>]
[[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Get-GPOZaurrLegacyFiles -Forest "contoso.com" -IncludeDomains "domain1", "domain2" -ExcludeDomains "domain3" -ExtendedForestInformation $additionalInfo
``` ```
{{ Add example description here }} Retrieves legacy GPO files from the "contoso.com" forest for "domain1" and "domain2" domains while excluding "domain3", using additional forest information.
## PARAMETERS ## PARAMETERS
### -ExcludeDomains ### -ExcludeDomains
{{ Fill ExcludeDomains Description }} Specifies an array of domain names to exclude from the search for legacy GPO files.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional information about the forest to enhance the retrieval process.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the name of the forest from which to retrieve legacy GPO files.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domain names to include in the search for legacy GPO files.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -96,11 +97,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+98 -85
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: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrLink # Get-GPOZaurrLink
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Retrieves Group Policy Object (GPO) links based on specified criteria.
## SYNTAX ## SYNTAX
### Linked (Default) ### Linked (Default)
``` ```powershell
Get-GPOZaurrLink [-Linked <String[]>] [-Limited] [-SkipDuplicates] [-GPOCache <IDictionary>] [-Forest <String>] Get-GPOZaurrLink [-Linked <string[]>] [-Limited] [-SkipDuplicates] [-GPOCache <IDictionary>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-AsHashTable] [-Summary] [<CommonParameters>]
[-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>]
[-AsHashTable] [-Summary] [<CommonParameters>]
``` ```
### ADObject ### ADObject
``` ```powershell
Get-GPOZaurrLink -ADObject <ADObject[]> [-Limited] [-SkipDuplicates] [-GPOCache <IDictionary>] Get-GPOZaurrLink -ADObject <ADObject[]> [-Limited] [-SkipDuplicates] [-GPOCache <IDictionary>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-AsHashTable] [-Summary] [<CommonParameters>]
[-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-ExtendedForestInformation <IDictionary>] [-AsHashTable] [-Summary] [<CommonParameters>]
``` ```
### Filter ### Filter
``` ```powershell
Get-GPOZaurrLink [-Filter <String>] [-SearchBase <String>] [-SearchScope <ADSearchScope>] [-Limited] Get-GPOZaurrLink [-Filter <string>] [-SearchBase <string>] [-SearchScope <ADSearchScope>] [-Limited] [-SkipDuplicates] [-GPOCache <IDictionary>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-AsHashTable] [-Summary] [<CommonParameters>]
[-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[]>] Get-GPOZaurrLink [-Site <string[]>] [-GPOCache <IDictionary>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-AsHashTable] [-Summary] [<CommonParameters>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-AsHashTable] [-Summary]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Get-GPOZaurrLink -ADObject $ADObject -Linked 'All'
``` ```
{{ Add example description here }} Description
-----------
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
{{ Fill ADObject Description }} Specifies the Active Directory object(s) to search for GPO links.
```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 (ByPropertyName, ByValue) Accept pipeline input: True (ByValue, ByPropertyName)
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -AsHashTable ### -AsHashTable
@@ -75,29 +75,31 @@ Accept wildcard characters: False
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: Linked, ADObject, Filter, Site
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: False Accept wildcard characters: True
``` ```
### -ExcludeDomains ### -ExcludeDomains
{{ Fill ExcludeDomains Description }} Specifies the domains to exclude from the search.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: Linked, ADObject, Filter, 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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
@@ -105,166 +107,175 @@ Accept wildcard characters: False
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: Linked, ADObject, Filter, 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: False Accept wildcard characters: True
``` ```
### -Filter ### -Filter
{{ Fill Filter Description }} Specifies the filter criteria to search for GPO links.
```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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest name for filtering GPO links.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: Linked, ADObject, Filter, Site
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: False Accept wildcard characters: True
``` ```
### -GPOCache ### -GPOCache
{{ Fill GPOCache Description }} Specifies a cache for storing GPO information.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: Linked, ADObject, Filter, 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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies the domains to include in the search.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: Linked, ADObject, Filter, Site
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: False Accept wildcard characters: True
``` ```
### -Limited ### -Limited
{{ Fill Limited Description }} Indicates whether to limit the search results.
```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: None Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -Linked ### -Linked
{{ Fill Linked Description }} Specifies the type of linked GPOs to retrieve. Valid values are 'All', 'Root', 'DomainControllers', 'Site', and 'OrganizationalUnit'.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Linked Parameter Sets: Linked
Aliases: Aliases:
Accepted values: All, Root, DomainControllers, Site, OrganizationalUnit Possible 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: False Accept wildcard characters: True
``` ```
### -SearchBase ### -SearchBase
{{ Fill SearchBase Description }} Specifies the search base for filtering GPO links.
```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: False Accept wildcard characters: True
``` ```
### -SearchScope ### -SearchScope
{{ Fill SearchScope Description }} Specifies the search scope for filtering GPO links.
```yaml ```yaml
Type: ADSearchScope Type: ADSearchScope
Parameter Sets: Filter Parameter Sets: Filter
Aliases: Aliases:
Accepted values: Base, OneLevel, Subtree Possible 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: False Accept wildcard characters: True
``` ```
### -Site ### -Site
{{ Fill Site Description }} Specifies the site(s) to search for GPO links.
```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: False Accept wildcard characters: True
``` ```
### -SkipDuplicates ### -SkipDuplicates
{{ Fill SkipDuplicates Description }} Indicates whether to skip duplicate search results.
```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: None Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -Summary ### -Summary
@@ -272,14 +283,15 @@ Accept wildcard characters: False
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: Linked, ADObject, Filter, Site
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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -287,11 +299,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### Microsoft.ActiveDirectory.Management.ADObject[] - `ADObject[]`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+47 -38
View File
@@ -1,126 +1,134 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrLinkSummary # Get-GPOZaurrLinkSummary
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Retrieves a summary of GPO links based on specified criteria.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Get-GPOZaurrLinkSummary [[-Report] <String[]>] [-UnlimitedProperties] [[-Forest] <String>] Get-GPOZaurrLinkSummary [[-Report] <string[]>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-UnlimitedProperties] [<CommonParameters>]
[[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Get-GPOZaurrLinkSummary -Forest "Contoso" -IncludeDomains "Domain1", "Domain2" -Report "MultipleLinks"
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
{{ Fill ExcludeDomains Description }} Specifies an array of domains to exclude from the report.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional information about the forest.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest name to retrieve GPO links from.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domains to include in the report.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Report ### -Report
{{ Fill Report Description }} Specifies the type of report to generate. Valid values are 'All', 'MultipleLinks', 'OneLink', and 'LinksSummary'. Default is 'All'.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: All, MultipleLinks, OneLink, LinksSummary Possible values: All, MultipleLinks, OneLink, LinksSummary
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: All
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -UnlimitedProperties ### -UnlimitedProperties
{{ Fill UnlimitedProperties Description }} Indicates whether to include unlimited properties in the report.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -128,11 +136,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+163
View File
@@ -0,0 +1,163 @@
---
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
+60 -45
View File
@@ -1,137 +1,151 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrNetLogon # Get-GPOZaurrNetLogon
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Retrieves information about Group Policy Objects (GPO) stored in the Netlogon and SYSVOL directories.
## SYNTAX ## SYNTAX
### Default (Default) ### Default (Default)
``` ```powershell
Get-GPOZaurrNetLogon [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] Get-GPOZaurrNetLogon [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
[-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
``` ```
### OwnerOnly ### OwnerOnly
``` ```powershell
Get-GPOZaurrNetLogon [-OwnerOnly] [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] Get-GPOZaurrNetLogon [-OwnerOnly] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
[-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
``` ```
### SkipOwner ### SkipOwner
``` ```powershell
Get-GPOZaurrNetLogon [-SkipOwner] [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] Get-GPOZaurrNetLogon [-SkipOwner] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
[-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Get-GPOZaurrNetLogon -Forest "contoso.com" -IncludeDomains "domain1", "domain2"
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
{{ Fill ExcludeDomains Description }} Specifies an array of domains to exclude from GPO retrieval.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: Default, OwnerOnly, SkipOwner
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional forest information to include in the output.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: Default, OwnerOnly, SkipOwner
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest name to retrieve GPO information from.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: Default, OwnerOnly, SkipOwner
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domains to include in GPO retrieval.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: Default, OwnerOnly, SkipOwner
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: False Accept wildcard characters: True
``` ```
### -OwnerOnly ### -OwnerOnly
{{ Fill OwnerOnly Description }} Specifies whether to include only GPOs with identified owners.
```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: None Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -SkipOwner ### -SkipOwner
{{ Fill SkipOwner Description }} Specifies whether to skip checking the owner of GPOs.
```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: None Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -139,11 +153,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+37 -35
View File
@@ -1,126 +1,127 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrOrganizationalUnit # Get-GPOZaurrOrganizationalUnit
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Retrieves information about Group Policy Objects (GPOs) linked to Organizational Units (OUs) within a specified forest.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Get-GPOZaurrOrganizationalUnit [[-Forest] <String>] [[-ExcludeDomains] <String[]>] Get-GPOZaurrOrganizationalUnit [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-Option] <string[]>] [[-ExcludeOrganizationalUnit] <string[]>] [<CommonParameters>]
[[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>] [[-Option] <String[]>]
[[-ExcludeOrganizationalUnit] <String[]>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} 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"
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
{{ Fill ExcludeDomains Description }} Specifies an array of domains to exclude from processing.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExcludeOrganizationalUnit ### -ExcludeOrganizationalUnit
{{ Fill ExcludeOrganizationalUnit Description }} Specifies an array of OUs to exclude from processing.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional information about the forest.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the name of the forest to retrieve information from.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domains to include for processing.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Option ### -Option
{{ Fill Option Description }} Specifies the action to perform on the retrieved data. Valid values are 'OK', 'Unlink', or 'Delete'.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: OK, Unlink, Delete Possible 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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -128,11 +129,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+154 -150
View File
@@ -1,36 +1,27 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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[]>] Get-GPOZaurrOwner [-IncludeSysvol] [-SkipBroken] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-ADAdministrativeGroups <IDictionary>] [-ApprovedOwner <string[]>] [<CommonParameters>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>]
[-ADAdministrativeGroups <IDictionary>] [-ApprovedOwner <String[]>] [<CommonParameters>]
``` ```
### GPOName ### GPOName
``` ```powershell
Get-GPOZaurrOwner [-GPOName <String>] [-IncludeSysvol] [-SkipBroken] [-Forest <String>] Get-GPOZaurrOwner [-GPOName <string>] [-IncludeSysvol] [-SkipBroken] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-ADAdministrativeGroups <IDictionary>] [-ApprovedOwner <string[]>] [<CommonParameters>]
[-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>]
[-ADAdministrativeGroups <IDictionary>] [-ApprovedOwner <String[]>] [<CommonParameters>]
``` ```
### GPOGUID ### GPOGUID
``` ```powershell
Get-GPOZaurrOwner [-GPOGuid <String>] [-IncludeSysvol] [-SkipBroken] [-Forest <String>] Get-GPOZaurrOwner [-GPOGuid <string>] [-IncludeSysvol] [-SkipBroken] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-ADAdministrativeGroups <IDictionary>] [-ApprovedOwner <string[]>] [<CommonParameters>]
[-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>]
[-ADAdministrativeGroups <IDictionary>] [-ApprovedOwner <String[]>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -39,152 +30,33 @@ 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
### -GPOName
Name of GPO.
By default all GPOs are returned
```yaml
Type: String
Parameter Sets: GPOName
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -GPOGuid
GUID of GPO.
By default all GPOs are returned
```yaml
Type: String
Parameter Sets: GPOGUID
Aliases: GUID, GPOID
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -IncludeSysvol
Includes Owner from SYSVOL as well
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```
### -SkipBroken
Doesn't display GPOs that have no SYSVOL content (orphaned GPOs)
```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
```
### -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 ### -ADAdministrativeGroups
Ability to provide AD Administrative Groups from another command to speed up processing Ability to provide AD Administrative Groups from another command to speed up processing
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: Default, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### -ApprovedOwner ### -ApprovedOwner
@@ -192,14 +64,143 @@ Ability to provide different owner (non administrative that still is approved fo
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: Default, GPOName, GPOGUID
Aliases: Exclusion, Exclusions Aliases: Exclusion, Exclusions
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: 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
Name of GPO. By default all GPOs are returned
```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
```
### -IncludeSysvol
Includes Owner from SYSVOL as well
```yaml
Type: SwitchParameter
Parameter Sets: Default, GPOName, GPOGUID
Aliases:
Possible values:
Required: False
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
```
### -SkipBroken
Doesn't display GPOs that have no SYSVOL content (orphaned GPOs)
```yaml
Type: SwitchParameter
Parameter Sets: Default, GPOName, GPOGUID
Aliases:
Possible values:
Required: False
Position: named
Default value: False
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -207,9 +208,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+59 -52
View File
@@ -1,20 +1,17 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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[]>] Get-GPOZaurrPassword [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-GPOPath] <string[]>] [<CommonParameters>]
[[-ExtendedForestInformation] <IDictionary>] [[-GPOPath] <String[]>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -23,60 +20,33 @@ 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
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: (All)
Aliases: ForestName
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains ### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
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: False Accept wildcard characters: True
```
### -IncludeDomains
Include only specific domains, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Domain, Domains
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
@@ -84,14 +54,31 @@ Ability to provide Forest Information from another command to speed up processin
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: 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: 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 ### -GPOPath
@@ -99,14 +86,31 @@ Path where Group Policy content is located or where backup is located
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 5 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: 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: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -114,9 +118,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+9 -359
View File
@@ -1,45 +1,16 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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
### GPO (Default) Get-GPOZaurrPermission
```
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
@@ -47,346 +18,25 @@ Get-GPOZaurrPermission [-GPOGuid <String>] [-Principal <String[]>] [-PrincipalTy
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} Get-GPOZaurrPermission
``` ```
{{ 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
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+29 -27
View File
@@ -1,94 +1,95 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrPermissionAnalysis # Get-GPOZaurrPermissionAnalysis
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Analyzes permissions for Group Policy Objects (GPOs) and administrative groups.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Get-GPOZaurrPermissionAnalysis [[-Forest] <String>] [[-ExcludeDomains] <String[]>] Get-GPOZaurrPermissionAnalysis [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-Permissions] <array>] [<CommonParameters>]
[[-IncludeDomains] <String[]>] [[-Permissions] <Array>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the Description }} This function analyzes permissions for Group Policy Objects (GPOs) and identifies administrative groups with specific permissions.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Get-GPOZaurrPermissionAnalysis -Forest "ContosoForest" -IncludeDomains @("Domain1", "Domain2") -ExcludeDomains @("Domain3") -Permissions $PermissionsArray
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
{{ Fill ExcludeDomains Description }} Specifies an array of domains to exclude from the analysis.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the name of the forest to analyze.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domains to include in the analysis.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Permissions ### -Permissions
{{ Fill Permissions Description }} Specifies an array of permissions to analyze.
```yaml ```yaml
Type: Array Type: Array
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -96,11 +97,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+68 -61
View File
@@ -1,186 +1,192 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrPermissionConsistency # Get-GPOZaurrPermissionConsistency
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Retrieves information about Group Policy Objects (GPOs) and checks permission consistency across domains.
## SYNTAX ## SYNTAX
### Type (Default) ### Type (Default)
``` ```powershell
Get-GPOZaurrPermissionConsistency [-Type <String[]>] [-Forest <String>] [-ExcludeDomains <String[]>] Get-GPOZaurrPermissionConsistency [-Type <string[]>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-IncludeGPOObject] [-VerifyInheritance] [<CommonParameters>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-IncludeGPOObject]
[-VerifyInheritance] [<CommonParameters>]
``` ```
### GPOName ### GPOName
``` ```powershell
Get-GPOZaurrPermissionConsistency [-GPOName <String>] [-Forest <String>] [-ExcludeDomains <String[]>] Get-GPOZaurrPermissionConsistency [-GPOName <string>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-IncludeGPOObject] [-VerifyInheritance] [<CommonParameters>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-IncludeGPOObject]
[-VerifyInheritance] [<CommonParameters>]
``` ```
### GPOGUID ### GPOGUID
``` ```powershell
Get-GPOZaurrPermissionConsistency [-GPOGuid <String>] [-Forest <String>] [-ExcludeDomains <String[]>] Get-GPOZaurrPermissionConsistency [-GPOGuid <string>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-IncludeGPOObject] [-VerifyInheritance] [<CommonParameters>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-IncludeGPOObject]
[-VerifyInheritance] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Get-GPOZaurrPermissionConsistency -GPOName "TestGPO" -Forest "Contoso" -IncludeDomains @("DomainA", "DomainB") -Type "Consistent"
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
{{ Fill ExcludeDomains Description }} Specifies an array of domains to exclude from the search.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: Type, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional information about the forest.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: Type, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest name to retrieve GPO information from.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: Type, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### -GPOGuid ### -GPOGuid
{{ Fill GPOGuid Description }} Specifies the GUID of the GPO to retrieve.
```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: False Accept wildcard characters: True
``` ```
### -GPOName ### -GPOName
{{ Fill GPOName Description }} Specifies the name of the GPO to retrieve.
```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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domains to include in the search.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: Type, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### -IncludeGPOObject ### -IncludeGPOObject
{{ Fill IncludeGPOObject Description }} Indicates whether to include the GPO object in the output.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: Type, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### -Type ### -Type
{{ Fill Type Description }} Specifies the type of consistency to check. Valid values are 'Consistent', 'Inconsistent', or 'All'.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: Type Parameter Sets: Type
Aliases: Aliases:
Accepted values: Consistent, Inconsistent, All Possible values: Consistent, Inconsistent, All
Required: False Required: False
Position: Named Position: named
Default value: None Default value: All
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -VerifyInheritance ### -VerifyInheritance
{{ Fill VerifyInheritance Description }} Indicates whether to verify inheritance of permissions.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: Type, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -188,11 +194,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+52 -48
View File
@@ -1,20 +1,17 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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[]>] Get-GPOZaurrPermissionIssue [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>]
[[-ExtendedForestInformation] <IDictionary>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -23,57 +20,28 @@ Detects Group Policy missing Authenticated Users permission while not having hig
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
``` ```powershell
$Issues = Get-GPOZaurrPermissionIssue PS > $Issues = Get-GPOZaurrPermissionIssue
$Issues | Format-Table
``` ```
$Issues | 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: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains ### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
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: False Accept wildcard characters: True
```
### -IncludeDomains
Include only specific domains, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Domain, Domains
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
@@ -81,14 +49,47 @@ Ability to provide Forest Information from another command to speed up processin
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: 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: 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
```
### -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: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -96,9 +97,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+48 -41
View File
@@ -1,142 +1,148 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrPermissionRoot # Get-GPOZaurrPermissionRoot
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Retrieves the root permissions of Group Policy Objects (GPOs) based on specified criteria.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Get-GPOZaurrPermissionRoot [[-IncludePermissionType] <String[]>] [[-ExcludePermissionType] <String[]>] Get-GPOZaurrPermissionRoot [[-IncludePermissionType] <string[]>] [[-ExcludePermissionType] <string[]>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-SkipNames] [<CommonParameters>]
[[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>]
[[-ExtendedForestInformation] <IDictionary>] [-SkipNames] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the Description }} Retrieves the root permissions of GPOs based on the specified criteria, including filtering by permission types, forest, domains, and more.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Get-GPOZaurrPermissionRoot -IncludePermissionType 'GpoRootCreate' -ExcludePermissionType 'GpoRootOwner' -Forest 'ExampleForest' -IncludeDomains 'Domain1', 'Domain2' -ExtendedForestInformation $ForestInfo -SkipNames
```
### EXAMPLE 2
```powershell
PS > Get-GPOZaurrPermissionRoot -IncludePermissionType 'GpoRootOwner' -ExcludePermissionType 'GpoRootCreate' -Forest 'AnotherForest' -ExcludeDomains 'Domain3' -SkipNames
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -ExcludeDomains ### -ExcludeDomains
{{ Fill ExcludeDomains Description }} Specifies domains to exclude from the search.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExcludePermissionType ### -ExcludePermissionType
{{ Fill ExcludePermissionType Description }} Specifies the root permission types to exclude from the search.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: GpoRootCreate, GpoRootOwner Possible 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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Provides additional forest information to speed up processing.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the target forest. By default, the current forest is used.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies domains to include in the search.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludePermissionType ### -IncludePermissionType
{{ Fill IncludePermissionType Description }} Specifies the root permission types to include in the search.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: GpoRootCreate, GpoRootOwner Possible 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: False Accept wildcard characters: True
``` ```
### -SkipNames ### -SkipNames
{{ Fill SkipNames Description }} Skips processing names during the operation.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -144,11 +150,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+56 -50
View File
@@ -1,175 +1,180 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Get-GPOZaurrPermissionSummary # Get-GPOZaurrPermissionSummary
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Retrieves a summary of Group Policy Object (GPO) permissions based on specified criteria.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Get-GPOZaurrPermissionSummary [[-Type] <String[]>] [[-PermitType] <String>] Get-GPOZaurrPermissionSummary [[-Type] <string[]>] [[-PermitType] <string>] [[-IncludePermissionType] <string[]>] [[-ExcludePermissionType] <string[]>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-Separator] <string>] [<CommonParameters>]
[[-IncludePermissionType] <String[]>] [[-ExcludePermissionType] <String[]>] [[-Forest] <String>]
[[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>]
[[-Separator] <String>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the Description }} Retrieves a summary of GPO permissions based on the specified criteria, including filtering by permission types, permit types, and more.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Get-GPOZaurrPermissionSummary -Type 'All' -PermitType 'Allow' -IncludePermissionType 'GpoApply', 'GpoEdit' -ExcludePermissionType 'GpoOwner' -Forest 'ExampleForest' -IncludeDomains 'Domain1', 'Domain2' -ExtendedForestInformation $ForestInfo -Separator '|'
```
### 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
{{ Fill ExcludeDomains Description }} Specifies domains to exclude from the search.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExcludePermissionType ### -ExcludePermissionType
{{ Fill ExcludePermissionType Description }} Specifies the permission types to exclude from the summary.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: GpoApply, GpoEdit, GpoCustom, GpoEditDeleteModifySecurity, GpoRead, GpoOwner, GpoRootCreate, GpoRootOwner Possible 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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Provides additional forest information to speed up processing.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the target forest. By default, the current forest is used.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies domains to include in the search.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludePermissionType ### -IncludePermissionType
{{ Fill IncludePermissionType Description }} Specifies the permission types to include in the summary.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: GpoApply, GpoEdit, GpoCustom, GpoEditDeleteModifySecurity, GpoRead, GpoOwner, GpoRootCreate, GpoRootOwner Possible 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: False Accept wildcard characters: True
``` ```
### -PermitType ### -PermitType
{{ Fill PermitType Description }} Specifies the type of permission to permit. Options include 'Allow', 'Deny', and 'All'.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: Allow, Deny, All Possible values: Allow, Deny, All
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: All
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -Separator ### -Separator
{{ Fill Separator Description }} Specifies the separator to use in the output.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Type ### -Type
{{ Fill Type Description }} Specifies the type of permissions to include. Options include 'AuthenticatedUsers', 'DomainComputers', 'Unknown', 'WellKnownAdministrative', 'NotWellKnown', 'NotWellKnownAdministrative', 'NotAdministrative', 'Administrative', and 'All'.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: AuthenticatedUsers, DomainComputers, Unknown, WellKnownAdministrative, NotWellKnown, NotWellKnownAdministrative, NotAdministrative, Administrative, All Possible values: AuthenticatedUsers, DomainComputers, Unknown, WellKnownAdministrative, NotWellKnown, NotWellKnownAdministrative, NotAdministrative, Administrative, All
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: All
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -177,11 +182,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+213
View File
@@ -0,0 +1,213 @@
---
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
+99 -97
View File
@@ -1,22 +1,17 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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[]>] Get-GPOZaurrSysvolDFSR [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-ExcludeDomainControllers] <string[]>] [[-IncludeDomains] <string[]>] [[-IncludeDomainControllers] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-SearchDFSR] <string>] [-SkipRODC] [<CommonParameters>]
[[-ExcludeDomainControllers] <String[]>] [[-IncludeDomains] <String[]>]
[[-IncludeDomainControllers] <String[]>] [-SkipRODC] [[-ExtendedForestInformation] <IDictionary>]
[[-SearchDFSR] <String>] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -25,27 +20,28 @@ Gets DFSR information from the SYSVOL DFSR
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
``` ```powershell
$DFSR = Get-GPOZaurrSysvolDFSR PS > $DFSR = Get-GPOZaurrSysvolDFSR
$DFSR | Format-Table *
``` ```
$DFSR | Format-Table *
## PARAMETERS ## PARAMETERS
### -Forest ### -ExcludeDomainControllers
Target different Forest, by default current forest is used Exclude specific domain controllers, by default there are no exclusions, as long as VerifyDomainControllers switch is enabled. Otherwise this parameter is ignored.
```yaml ```yaml
Type: String Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: ForestName 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: False Accept wildcard characters: True
``` ```
### -ExcludeDomains ### -ExcludeDomains
@@ -53,77 +49,15 @@ Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
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: False Accept wildcard characters: True
```
### -ExcludeDomainControllers
Exclude specific domain controllers, by default there are no exclusions, as long as VerifyDomainControllers switch is enabled.
Otherwise this parameter is ignored.
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
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: 4
Default value: None
Accept pipeline input: False
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
Skip Read-Only Domain Controllers.
By default all domain controllers are included.
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
@@ -131,30 +65,95 @@ Ability to provide Forest Information from another command to speed up processin
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 6 Position: 5
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -SearchDFSR ### -Forest
Define DFSR Share. Target different Forest, by default current forest is used
By default it uses SYSVOL Share
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases: ForestName
Possible values:
Required: False Required: False
Position: 7 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
Type: String[]
Parameter Sets: __AllParameterSets
Aliases: DomainControllers
Possible values:
Required: False
Position: 4
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: __AllParameterSets
Aliases: Domain, Domains
Possible values:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -SearchDFSR
Define DFSR Share. By default it uses SYSVOL Share
```yaml
Type: String
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 6
Default value: SYSVOL Share Default value: SYSVOL Share
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
```
### -SkipRODC
Skip Read-Only Domain Controllers. By default all domain controllers are included.
```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
@@ -162,9 +161,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+90 -86
View File
@@ -1,28 +1,22 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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 [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] Get-GPOZaurrUpdates -DateRange <string> [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-DateProperty <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
-DateRange <String> [-DateProperty <String[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
``` ```
### Dates ### Dates
``` ```powershell
Get-GPOZaurrUpdates [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] Get-GPOZaurrUpdates -DateFrom <datetime> -DateTo <datetime> [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-DateProperty <string[]>] [-ExtendedForestInformation <IDictionary>] [<CommonParameters>]
-DateFrom <DateTime> -DateTo <DateTime> [-DateProperty <String[]>] [-ExtendedForestInformation <IDictionary>]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -31,63 +25,19 @@ 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
@@ -95,27 +45,29 @@ 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: False Accept wildcard characters: True
``` ```
### -DateTo ### -DateProperty
Provide a date to which to end the search, by default the last X days are used Choose a date property. It can be WhenCreated or WhenChanged or both. By default whenCreated is used for comparison purposes
```yaml ```yaml
Type: DateTime Type: String[]
Parameter Sets: Dates Parameter Sets: DateRange, Dates
Aliases: Aliases:
Possible values: WhenCreated, WhenChanged
Required: True Required: False
Position: Named Position: named
Default value: None Default value: WhenCreated
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -DateRange ### -DateRange
@@ -125,29 +77,45 @@ Provide a date range to search for, by default the last X days are used
Type: String Type: String
Parameter Sets: DateRange Parameter Sets: DateRange
Aliases: Aliases:
Possible values: PastHour, CurrentHour, PastDay, CurrentDay, PastMonth, CurrentMonth, PastQuarter, CurrentQuarter, Last14Days, Last21Days, Last30Days, Last7Days, Last3Days, Last1Days
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: False Accept wildcard characters: True
``` ```
### -DateProperty ### -DateTo
Choose a date property. Provide a date to which to end the search, by default the last X days are used
It can be WhenCreated or WhenChanged or both.
By default whenCreated is used for comparison purposes ```yaml
Type: DateTime
Parameter Sets: Dates
Aliases:
Possible values:
Required: True
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 ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: DateRange, Dates
Aliases: Aliases:
Possible values:
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
@@ -155,14 +123,47 @@ Ability to provide Forest Information from another command to speed up processin
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: DateRange, Dates
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: False Accept wildcard characters: True
```
### -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
@@ -170,9 +171,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+88 -80
View File
@@ -1,21 +1,17 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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[]>] Get-GPOZaurrWMI [[-Guid] <guid[]>] [[-Name] <string[]>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-AsHashtable] [<CommonParameters>]
[[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>] [-AsHashtable]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -24,60 +20,33 @@ Get Group Policy WMI filter
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
``` ```powershell
Get-GPOZaurrWMI -AsHashtable PS > Get-GPOZaurrWMI -AsHashtable
``` ```
### EXAMPLE 2 ### EXAMPLE 2
```powershell
PS > Get-GPOZaurrWMI | Format-Table
``` ```
Get-GPOZaurrWMI | Format-Table
```
## PARAMETERS ## PARAMETERS
### -Guid ### -AsHashtable
Search for specific filter using GUID Return output as hashtable
```yaml ```yaml
Type: Guid[] Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: named
Default value: None Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
```
### -Name
Search for specific filter using Name
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
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: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -ExcludeDomains ### -ExcludeDomains
@@ -85,29 +54,15 @@ Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: 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: False Accept wildcard characters: True
```
### -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 ### -ExtendedForestInformation
@@ -115,29 +70,79 @@ Ability to provide Forest Information from another command to speed up processin
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 6 Position: 5
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -AsHashtable ### -Forest
Return output as hashtable Target different Forest, by default current forest is used
```yaml ```yaml
Type: SwitchParameter Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
```
### -Guid
Search for specific filter using GUID
```yaml
Type: Guid[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 0
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: __AllParameterSets
Aliases: Domain, Domains
Possible values:
Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -Name
Search for specific filter using Name
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -145,9 +150,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+177 -135
View File
@@ -1,21 +1,17 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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 [[-Exclusions] <Object>] [-FilePath <String>] [[-Type] <String[]>] [-PassThru] [-HideHTML] 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>]
[-HideSteps] [-ShowError] [-ShowWarning] [-Forest <String>] [-ExcludeDomains <String[]>]
[-IncludeDomains <String[]>] [-Online] [-SplitReports] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -24,20 +20,37 @@ 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
Invoke-GPOZaurr -Type GPOOrganizationalUnit -Online -FilePath $PSScriptRoot\Reports\GPOZaurrOU.html -Exclusions @( PS > 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.
@@ -47,14 +60,15 @@ Exclusions should be used only if there is single report being asked for.
```yaml ```yaml
Type: Object Type: Object
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: ExcludeGroupPolicies, ExclusionsCode Aliases: ExcludeGroupPolicies, ExclusionsCode
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: False Accept wildcard characters: True
``` ```
### -FilePath ### -FilePath
@@ -62,106 +76,15 @@ Path to the file where the report will be saved.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
```
### -Type
Type of report to be generated from a list of available reports.
```yaml
Type: String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 1
Default value: None
Accept pipeline input: False
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 ### -Forest
@@ -169,29 +92,79 @@ Target different Forest, by default current forest is used
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExcludeDomains ### -GPOGUID
Exclude domain from search, by default whole forest is scanned {{ Fill GPOGUID Description }}
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases: GUID
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: 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 ### -IncludeDomains
@@ -199,14 +172,15 @@ Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Online ### -Online
@@ -214,30 +188,95 @@ Forces report to use online resources in HTML (using CDN most of the time), by d
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -SplitReports ### -PassThru
Split report into multiple files, one for each report. Returns created objects after the report is done
This can be useful for large domains with huge reports.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: 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 of report to be generated from a list of available reports.
```yaml
Type: String[]
Parameter Sets: __AllParameterSets
Aliases:
Possible values:
Required: False
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -245,9 +284,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+147 -92
View File
@@ -1,74 +1,82 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Invoke-GPOZaurrContent # Invoke-GPOZaurrContent
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Invokes GPOZaurrContent function to retrieve Group Policy Objects information.
## SYNTAX ## SYNTAX
### Default (Default) ### Default (Default)
``` ```powershell
Invoke-GPOZaurrContent [-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] 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>]
[-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] Invoke-GPOZaurrContent [-GPOPath <string>] [-Type <string[]>] [-Splitter <string>] [-FullObjects] [-OutputType <string[]>] [-OutputPath <string>] [-Open] [-Online] [-CategoriesOnly] [-SingleObject] [-SkipNormalize] [-SkipCleanup] [-Extended] [<CommonParameters>]
[-OutputType <String[]>] [-OutputPath <String>] [-Open] [-Online] [-CategoriesOnly] [-SingleObject]
[-SkipNormalize] [-SkipCleanup] [-Extended] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Invoke-GPOZaurrContent -Forest "Contoso" -IncludeDomains "Domain1", "Domain2" -Type "Security" -OutputType "HTML" -OutputPath "C:\Reports\GPOReport.html"
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
{{ Fill CategoriesOnly Description }} Indicates whether to retrieve only categories.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: Default, Local
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: False Accept wildcard characters: True
``` ```
### -ExcludeDomains ### -ExcludeDomains
{{ Fill ExcludeDomains Description }} Specifies an array of domains to exclude from the search.
```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: False Accept wildcard characters: True
``` ```
### -Extended ### -Extended
@@ -76,165 +84,207 @@ Accept wildcard characters: False
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: Default, Local
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional information about the forest.
```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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest name to search for Group Policy Objects.
```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: False Accept wildcard characters: True
``` ```
### -FullObjects ### -FullObjects
{{ Fill FullObjects Description }} Indicates whether to retrieve full objects.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: Default, Local
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: False Accept wildcard characters: True
```
### -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
{{ Fill GPOPath Description }} Specifies the path to a specific Group Policy Object.
```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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domains to include in the search.
```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: False Accept wildcard characters: True
``` ```
### -Online ### -Online
{{ Fill Online Description }} Indicates whether to retrieve information online.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: Default, Local
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: False Accept wildcard characters: True
``` ```
### -Open ### -Open
{{ Fill Open Description }} Indicates whether to open the output after retrieval.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: Default, Local
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: False Accept wildcard characters: True
``` ```
### -OutputPath ### -OutputPath
{{ Fill OutputPath Description }} Specifies the path to save the output.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: Default, 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: False Accept wildcard characters: True
``` ```
### -OutputType ### -OutputType
{{ Fill OutputType Description }} Specifies the type of output (HTML or Object).
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: Default, Local
Aliases: Aliases:
Accepted values: HTML, Object Possible values: HTML, Object
Required: False Required: False
Position: Named Position: named
Default value: None Default value: Object
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -SingleObject ### -SingleObject
{{ Fill SingleObject Description }} Indicates whether to retrieve a single object.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: Default, Local
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: False Accept wildcard characters: True
``` ```
### -SkipCleanup ### -SkipCleanup
@@ -242,59 +292,63 @@ Accept wildcard characters: False
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: Default, Local
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: False Accept wildcard characters: True
``` ```
### -SkipNormalize ### -SkipNormalize
{{ Fill SkipNormalize Description }} Indicates whether to skip normalization.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: Default, Local
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: False Accept wildcard characters: True
``` ```
### -Splitter ### -Splitter
{{ Fill Splitter Description }} Specifies the delimiter to use for splitting information.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: Default, Local
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: Named Position: named
Default value: None Default value: [System.Environment]::NewLine
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -Type ### -Type
{{ Fill Type Description }} Specifies the type of information to retrieve.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: Default, 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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -302,11 +356,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+9 -429
View File
@@ -1,70 +1,16 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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
### Level Invoke-GPOZaurrPermission
```
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
@@ -72,391 +18,25 @@ Invoke-GPOZaurrPermission [[-PermissionRules] <ScriptBlock>] [-GPOGuid <String>]
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} Invoke-GPOZaurrPermission
``` ```
{{ 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
### Microsoft.ActiveDirectory.Management.ADObject[] - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+54 -43
View File
@@ -1,140 +1,150 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Invoke-GPOZaurrSupport # Invoke-GPOZaurrSupport
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Invokes GPOZaurrSupport function to retrieve Group Policy information.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Invoke-GPOZaurrSupport [[-Type] <String>] [[-ComputerName] <String>] [[-UserName] <String>] [[-Path] <String>] Invoke-GPOZaurrSupport [[-Type] <string>] [[-ComputerName] <string>] [[-UserName] <string>] [[-Path] <string>] [[-Splitter] <string>] [-PreventShow] [-Online] [<CommonParameters>]
[[-Splitter] <String>] [-PreventShow] [-Online] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the Description }} This function retrieves Group Policy information using either HTML, XML, or Object format. It can be run locally or on a remote computer.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Invoke-GPOZaurrSupport -Type HTML -ComputerName "RemoteComputer" -UserName "Admin" -Path (Join-Path $env:TEMP 'GPOReport.html')
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
{{ Fill ComputerName Description }} Specifies the name of the remote computer to retrieve Group Policy information from.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Online ### -Online
{{ Fill Online Description }} Runs the function online to retrieve the latest Group Policy information.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Path ### -Path
{{ Fill Path Description }} Specifies the path to save the output file. If not provided, a temporary file will be created.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -PreventShow ### -PreventShow
{{ Fill PreventShow Description }} Prevents displaying the output in the console.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Splitter ### -Splitter
{{ Fill Splitter Description }} Specifies the delimiter for splitting output data. Default is a new line.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: None Default value: [System.Environment]::NewLine
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -Type ### -Type
{{ Fill Type Description }} Specifies the type of output format. Valid values are 'NativeHTML', 'HTML', 'XML', or 'Object'. Default is 'HTML'.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: NativeHTML, HTML, XML, Object Possible values: NativeHTML, HTML, XML, Object
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: HTML
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -UserName ### -UserName
{{ Fill UserName Description }} Specifies the username to run the function as on the remote computer.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -142,11 +152,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+65 -82
View File
@@ -1,216 +1,198 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# New-GPOZaurrWMI # New-GPOZaurrWMI
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Creates a new WMI filter based on a WMI filter query.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
New-GPOZaurrWMI [-Name] <String> [[-Description] <String>] [[-Namespace] <String>] [-Query] <String> New-GPOZaurrWMI [-Name] <string> [[-Description] <string>] [[-Namespace] <string>] [-Query] <string> [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-SkipQueryCheck] [-Force] [-WhatIf] [-Confirm] [<CommonParameters>]
[-SkipQueryCheck] [-Force] [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>]
[[-ExtendedForestInformation] <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the Description }} This function creates a new WMI filter in Active Directory based on a specified WMI filter query.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > New-GPOZaurrWMI -Name "TestWMIFilter1" -Query "SELECT * FROM Win32_OperatingSystem" -Force
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
{{ Fill Description Description }} The description for the new WMI filter. Default is an empty string.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExcludeDomains ### -ExcludeDomains
{{ Fill ExcludeDomains Description }} An array of domains to exclude from WMI application.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Additional information about the forest for WMI customization.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Force ### -Force
{{ Fill Force Description }} Switch to force the creation of the WMI entry without confirmation.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} The forest to target for WMI creation.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} An array of domains to include for WMI application.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Name ### -Name
{{ Fill Name Description }} The name of the new WMI filter to be created.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Namespace ### -Namespace
{{ Fill Namespace Description }} The WMI namespace to target. Default is 'root\CIMv2'.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 2 Position: 2
Default value: None Default value: root\CIMv2
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -Query ### -Query
{{ Fill Query Description }} The WMI filter query to be applied to the WMI entry.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -SkipQueryCheck ### -SkipQueryCheck
{{ Fill SkipQueryCheck Description }} Switch to skip the query check before creating the WMI entry.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
```
### -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
@@ -218,11 +200,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+103 -131
View File
@@ -1,36 +1,27 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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 <Int32>] Optimize-GPOZaurr [[-ExcludeGroupPolicies] <scriptblock>] -GPOName <string> [-LimitProcessing <int>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>]
[-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-ExtendedForestInformation <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
### GPOGUID ### GPOGUID
``` ```powershell
Optimize-GPOZaurr [[-ExcludeGroupPolicies] <ScriptBlock>] -GPOGuid <String> [-LimitProcessing <Int32>] Optimize-GPOZaurr [[-ExcludeGroupPolicies] <scriptblock>] -GPOGuid <string> [-LimitProcessing <int>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>]
[-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-ExtendedForestInformation <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
### All ### All
``` ```powershell
Optimize-GPOZaurr [[-ExcludeGroupPolicies] <ScriptBlock>] [-All] [-LimitProcessing <Int32>] [-Forest <String>] Optimize-GPOZaurr [[-ExcludeGroupPolicies] <scriptblock>] -All [-LimitProcessing <int>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>]
[-ExcludeDomains <String[]>] [-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-WhatIf]
[-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -39,49 +30,100 @@ 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
Optimize-GPOZaurr -All -WhatIf -Verbose -LimitProcessing 2 { PS > 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: (All) Parameter Sets: GPOName, GPOGUID, All
Aliases: Aliases:
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: False Accept wildcard characters: True
``` ```
### -GPOName ### -ExtendedForestInformation
{{ Fill GPOName Description }} 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 ```yaml
Type: String Type: String
Parameter Sets: GPOName Parameter Sets: GPOName, GPOGUID, All
Aliases: Name, DisplayName Aliases: ForestName
Possible values:
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: False Accept wildcard characters: True
``` ```
### -GPOGuid ### -GPOGuid
@@ -91,73 +133,29 @@ Accept wildcard characters: False
Type: String Type: String
Parameter Sets: GPOGUID Parameter Sets: GPOGUID
Aliases: GUID, GPOID Aliases: GUID, GPOID
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: False Accept wildcard characters: True
``` ```
### -All ### -GPOName
{{ Fill All Description }} {{ Fill GPOName 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 ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: GPOName
Aliases: ForestName Aliases: Name, DisplayName
Possible values:
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: False Accept wildcard characters: True
```
### -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
@@ -165,60 +163,31 @@ Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: GPOName, GPOGUID, 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: False Accept wildcard characters: True
``` ```
### -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: (All) Parameter Sets: GPOName, GPOGUID, All
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: Named Position: named
Default value: None Default value: 0
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
```
### -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
@@ -226,9 +195,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+52 -51
View File
@@ -1,46 +1,44 @@
--- ---
Module Name: GPOZaurr Module Name: GPOZaurr
Module Guid: f7d4c9e4-0298-4f51-ad77-e8e3febebbde Module Guid: f7d4c9e4-0298-4f51-ad77-e8e3febebbde
Download Help Link: {{ Update Download Link }} Download Help Link: https://github.com/EvotecIT/GPOZaurr
Help Version: {{ Please enter version of help manually (X.X.X.X) format }} Help Version: 1.1.10
Locale: en-US Locale: en-US
--- ---
# GPOZaurr Module # GPOZaurr Module
## Description ## Description
{{ Fill in the 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.
## GPOZaurr Cmdlets ## GPOZaurr Cmdlets
### [Add-GPOPermission](Add-GPOPermission.md) ### [Add-GPOPermission](Add-GPOPermission.md)
{{ Fill in the Synopsis }} {{ Fill in the Description }}
### [Add-GPOZaurrPermission](Add-GPOZaurrPermission.md) ### [Add-GPOZaurrPermission](Add-GPOZaurrPermission.md)
{{ Fill in the Synopsis }} {{ Fill in the Description }}
### [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)
{{ Fill in the Synopsis }} Clears the ConflictAndDeleted folder in DFSR for specified GPOs.
### [ConvertFrom-CSExtension](ConvertFrom-CSExtension.md) ### [ConvertFrom-CSExtension](ConvertFrom-CSExtension.md)
{{ Fill in the Synopsis }} Converts Client-side Extension (CSE) GUIDs to their corresponding names.
### [Export-GPOZaurrContent](Export-GPOZaurrContent.md) ### [Export-GPOZaurrContent](Export-GPOZaurrContent.md)
Saves GPOs to XML or HTML files. Exports Group Policy Objects (GPOs) to XML or HTML files.
### [Find-CSExtension](Find-CSExtension.md) ### [Find-CSExtension](Find-CSExtension.md)
{{ Fill in the Synopsis }} This function retrieves Group Policy Client Side Extensions (CSEs) from a specified Windows computer.
### [Get-GPOZaurr](Get-GPOZaurr.md) ### [Get-GPOZaurr](Get-GPOZaurr.md)
Gets information about all Group Policies. Gets information about all Group Policies. Similar to what Get-GPO provides by default.
Similar to what Get-GPO provides by default.
### [Get-GPOZaurrAD](Get-GPOZaurrAD.md) ### [Get-GPOZaurrAD](Get-GPOZaurrAD.md)
{{ Fill in the Synopsis }} Retrieves Group Policy Objects (GPOs) information from Active Directory.
### [Get-GPOZaurrBackupInformation](Get-GPOZaurrBackupInformation.md) ### [Get-GPOZaurrBackupInformation](Get-GPOZaurrBackupInformation.md)
{{ Fill in the Synopsis }} Retrieves backup information from GPOZaurr manifest files.
### [Get-GPOZaurrBroken](Get-GPOZaurrBroken.md) ### [Get-GPOZaurrBroken](Get-GPOZaurrBroken.md)
Detects broken or otherwise damaged Group Policies Detects broken or otherwise damaged Group Policies
@@ -49,37 +47,40 @@ 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)
{{ Fill in the Synopsis }} Retrieves a dictionary of Group Policy Objects (GPOs) with their associated types and paths.
### [Get-GPOZaurrDuplicateObject](Get-GPOZaurrDuplicateObject.md) ### [Get-GPOZaurrDuplicateObject](Get-GPOZaurrDuplicateObject.md)
{{ Fill in the Synopsis }} Retrieves duplicate Group Policy Objects (GPOs) within a specified forest.
### [Get-GPOZaurrFiles](Get-GPOZaurrFiles.md) ### [Get-GPOZaurrFiles](Get-GPOZaurrFiles.md)
{{ Fill in the Synopsis }} Retrieves information about Group Policy Objects (GPOs) stored in SYSVOL and NETLOGON folders.
### [Get-GPOZaurrFilesPolicyDefinition](Get-GPOZaurrFilesPolicyDefinition.md) ### [Get-GPOZaurrFilesPolicyDefinition](Get-GPOZaurrFilesPolicyDefinition.md)
{{ Fill in the Synopsis }} Retrieves policy definitions for Group Policy Objects (GPOs) within specified domains.
### [Get-GPOZaurrFolders](Get-GPOZaurrFolders.md) ### [Get-GPOZaurrFolders](Get-GPOZaurrFolders.md)
{{ Fill in the Synopsis }} Retrieves information about GPO folders within specified domains.
### [Get-GPOZaurrInheritance](Get-GPOZaurrInheritance.md) ### [Get-GPOZaurrInheritance](Get-GPOZaurrInheritance.md)
Short description Retrieves inheritance information for Group Policy Objects (GPOs) within specified Organizational Units (OUs).
### [Get-GPOZaurrLegacyFiles](Get-GPOZaurrLegacyFiles.md) ### [Get-GPOZaurrLegacyFiles](Get-GPOZaurrLegacyFiles.md)
{{ Fill in the Synopsis }} Retrieves legacy Group Policy Object (GPO) files from the SYSVOL directory of specified domains within a forest.
### [Get-GPOZaurrLink](Get-GPOZaurrLink.md) ### [Get-GPOZaurrLink](Get-GPOZaurrLink.md)
{{ Fill in the Synopsis }} Retrieves Group Policy Object (GPO) links based on specified criteria.
### [Get-GPOZaurrLinkSummary](Get-GPOZaurrLinkSummary.md) ### [Get-GPOZaurrLinkSummary](Get-GPOZaurrLinkSummary.md)
{{ Fill in the Synopsis }} Retrieves a summary of GPO links based on specified criteria.
### [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)
{{ Fill in the Synopsis }} Retrieves information about Group Policy Objects (GPO) stored in the Netlogon and SYSVOL directories.
### [Get-GPOZaurrOrganizationalUnit](Get-GPOZaurrOrganizationalUnit.md) ### [Get-GPOZaurrOrganizationalUnit](Get-GPOZaurrOrganizationalUnit.md)
{{ Fill in the Synopsis }} Retrieves information about Group Policy Objects (GPOs) linked to Organizational Units (OUs) within a specified forest.
### [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
@@ -88,22 +89,25 @@ 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 Synopsis }} {{ Fill in the Description }}
### [Get-GPOZaurrPermissionAnalysis](Get-GPOZaurrPermissionAnalysis.md) ### [Get-GPOZaurrPermissionAnalysis](Get-GPOZaurrPermissionAnalysis.md)
{{ Fill in the Synopsis }} Analyzes permissions for Group Policy Objects (GPOs) and administrative groups.
### [Get-GPOZaurrPermissionConsistency](Get-GPOZaurrPermissionConsistency.md) ### [Get-GPOZaurrPermissionConsistency](Get-GPOZaurrPermissionConsistency.md)
{{ Fill in the Synopsis }} Retrieves information about Group Policy Objects (GPOs) and checks permission consistency across domains.
### [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)
{{ Fill in the Synopsis }} Retrieves the root permissions of Group Policy Objects (GPOs) based on specified criteria.
### [Get-GPOZaurrPermissionSummary](Get-GPOZaurrPermissionSummary.md) ### [Get-GPOZaurrPermissionSummary](Get-GPOZaurrPermissionSummary.md)
{{ Fill in the Synopsis }} Retrieves a summary of Group Policy Object (GPO) permissions based on specified criteria.
### [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
@@ -118,46 +122,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)
{{ Fill in the Synopsis }} Invokes GPOZaurrContent function to retrieve Group Policy Objects information.
### [Invoke-GPOZaurrPermission](Invoke-GPOZaurrPermission.md) ### [Invoke-GPOZaurrPermission](Invoke-GPOZaurrPermission.md)
{{ Fill in the Synopsis }} {{ Fill in the Description }}
### [Invoke-GPOZaurrSupport](Invoke-GPOZaurrSupport.md) ### [Invoke-GPOZaurrSupport](Invoke-GPOZaurrSupport.md)
{{ Fill in the Synopsis }} Invokes GPOZaurrSupport function to retrieve Group Policy information.
### [New-GPOZaurrWMI](New-GPOZaurrWMI.md) ### [New-GPOZaurrWMI](New-GPOZaurrWMI.md)
{{ Fill in the Synopsis }} Creates a new WMI filter based on a WMI filter query.
### [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 Synopsis }} {{ Fill in the Description }}
### [Remove-GPOZaurr](Remove-GPOZaurr.md) ### [Remove-GPOZaurr](Remove-GPOZaurr.md)
{{ Fill in the Synopsis }} Removes Group Policy Objects based on specified criteria.
### [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)
{{ Fill in the Synopsis }} Removes duplicate Group Policy Objects (GPOs) identified by the Get-GPOZaurrDuplicateObject function.
### [Remove-GPOZaurrFolders](Remove-GPOZaurrFolders.md) ### [Remove-GPOZaurrFolders](Remove-GPOZaurrFolders.md)
{{ Fill in the Synopsis }} Removes specified GPOZaurr folders and backs them up to a specified path.
### [Remove-GPOZaurrLegacyFiles](Remove-GPOZaurrLegacyFiles.md) ### [Remove-GPOZaurrLegacyFiles](Remove-GPOZaurrLegacyFiles.md)
{{ Fill in the Synopsis }} Removes legacy Group Policy Objects (GPO) files from specified domains.
### [Remove-GPOZaurrLinkEmptyOU](Remove-GPOZaurrLinkEmptyOU.md) ### [Remove-GPOZaurrLinkEmptyOU](Remove-GPOZaurrLinkEmptyOU.md)
{{ Fill in the Synopsis }} Removes Group Policy Object (GPO) links from empty Organizational Units (OUs) in a specified forest.
### [Remove-GPOZaurrPermission](Remove-GPOZaurrPermission.md) ### [Remove-GPOZaurrPermission](Remove-GPOZaurrPermission.md)
{{ Fill in the Synopsis }} {{ Fill in the Description }}
### [Remove-GPOZaurrWMI](Remove-GPOZaurrWMI.md) ### [Remove-GPOZaurrWMI](Remove-GPOZaurrWMI.md)
{{ Fill in the Synopsis }} Removes Group Policy WMI filters based on specified criteria.
### [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.
@@ -166,28 +170,25 @@ 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)
{{ Fill in the Synopsis }} Repairs permissions for Group Policy Objects (GPOs) based on specified criteria.
### [Repair-GPOZaurrPermissionConsistency](Repair-GPOZaurrPermissionConsistency.md) ### [Repair-GPOZaurrPermissionConsistency](Repair-GPOZaurrPermissionConsistency.md)
{{ Fill in the Synopsis }} Repairs permission consistency for Group Policy Objects (GPOs) in a specified domain or forest.
### [Restore-GPOZaurr](Restore-GPOZaurr.md) ### [Restore-GPOZaurr](Restore-GPOZaurr.md)
{{ Fill in the Synopsis }} Restores Group Policy Objects (GPOs) from a specified backup folder.
### [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. Used within Invoke-GPOZaurrPermission only. Set new group policy owner.
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)
Enables or disables user/computer section of Group Policy. {{ Fill in the Description }}
### [Skip-GroupPolicy](Skip-GroupPolicy.md) ### [Skip-GroupPolicy](Skip-GroupPolicy.md)
Used within ScriptBlocks only. Used within ScriptBlocks only. Allows to exclude Group Policy from being affected by fixes
Allows to exclude Group Policy from being affected by fixes
+9 -141
View File
@@ -1,22 +1,16 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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
@@ -24,151 +18,25 @@ Remove-GPOPermission [[-Type] <String[]>] [[-IncludePermissionType] <GPPermissio
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} Remove-GPOPermission
``` ```
{{ 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
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+76 -94
View File
@@ -1,233 +1,214 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Remove-GPOZaurr # Remove-GPOZaurr
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Removes Group Policy Objects based on specified criteria.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Remove-GPOZaurr [[-ExcludeGroupPolicies] <ScriptBlock>] [-Type] <String[]> [-LimitProcessing <Int32>] 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>]
[-Forest <String>] [-ExcludeDomains <String[]>] [-IncludeDomains <String[]>]
[-ExtendedForestInformation <IDictionary>] [-GPOPath <String[]>] [-BackupPath <String>] [-BackupDated]
[-RequireDays <Int32>] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Remove-GPOZaurr -Type 'Empty' -Forest 'Contoso' -IncludeDomains 'Domain1', 'Domain2' -BackupPath 'C:\GPOBackups' -BackupDated -RequireDays 7
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
{{ Fill BackupDated Description }} Indicates whether the backup should be dated.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -BackupPath ### -BackupPath
{{ Fill BackupPath Description }} Specifies the path for backing up GPOs before removal.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
```
### -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
{{ Fill ExcludeDomains Description }} Specifies the domains to exclude from GPO removal.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExcludeGroupPolicies ### -ExcludeGroupPolicies
{{ Fill ExcludeGroupPolicies Description }} Specifies the Group Policies to exclude from removal.
```yaml ```yaml
Type: ScriptBlock Type: ScriptBlock
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional information about the forest.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest to target for GPO removal.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -GPOPath ### -GPOPath
{{ Fill GPOPath Description }} Specifies the path to the GPOs to be removed.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies the domains to include for GPO removal.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -LimitProcessing ### -LimitProcessing
{{ Fill LimitProcessing Description }} Specifies the maximum number of GPOs to process before stopping.
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: Named Position: named
Default value: None Default value: 0
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -RequireDays ### -RequireDays
{{ Fill RequireDays Description }} Specifies the number of days before GPO removal is required.
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: Named Position: named
Default value: None Default value: 0
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -Type ### -Type
{{ Fill Type Description }} Specifies the type of GPOs to target for removal. Valid values are 'Empty', 'Unlinked', 'Disabled', 'NoApplyPermission'.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: Empty, Unlinked, Disabled, NoApplyPermission Possible 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: False Accept wildcard characters: True
```
### -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
@@ -235,11 +216,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+88 -112
View File
@@ -1,26 +1,21 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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 <Int32>] Remove-GPOZaurrBroken [-Type] <string[]> [-BackupPath <string>] [-BackupDated] [-LimitProcessing <int>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>]
[-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. Finds and removes broken Group Policies from SYSVOL or AD or both. Assesment is based on Get-GPOZaurrBroken and there are 3 supported types:
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
@@ -28,36 +23,39 @@ Assesment is based on Get-GPOZaurrBroken and there are 3 supported types:
## 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
Remove-GPOZaurrBroken -Verbose -WhatIf -Type AD, SYSVOL -IncludeDomains 'ad.evotec.pl' -LimitProcessing 2 PS > 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
### -Type ### -BackupDated
Choose one or more types to delete. Forces backup to be created within folder that has date in it
Options are AD, ObjectClass, SYSVOL
```yaml ```yaml
Type: String[] Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: True Required: False
Position: 1 Position: named
Default value: None Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -BackupPath ### -BackupPath
@@ -65,60 +63,15 @@ Path to optional backup of SYSVOL content before deletion
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
```
### -BackupDated
Forces backup to be created within folder that has date in it
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
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: 2147483647
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 ### -ExcludeDomains
@@ -126,29 +79,15 @@ Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
```
### -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 ### -ExtendedForestInformation
@@ -156,45 +95,79 @@ Ability to provide Forest Information from another command to speed up processin
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -WhatIf ### -Forest
Shows what would happen if the cmdlet runs. Target different Forest, by default current forest is used
The cmdlet is not run.
```yaml ```yaml
Type: SwitchParameter Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: wi 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: False Accept wildcard characters: True
``` ```
### -Confirm ### -IncludeDomains
Prompts you for confirmation before running the cmdlet. Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: SwitchParameter Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: cf 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: False Accept wildcard characters: True
```
### -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: __AllParameterSets
Aliases:
Possible values:
Required: False
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
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -202,9 +175,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+35 -63
View File
@@ -1,141 +1,112 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Remove-GPOZaurrDuplicateObject # Remove-GPOZaurrDuplicateObject
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Removes duplicate Group Policy Objects (GPOs) identified by the Get-GPOZaurrDuplicateObject function.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Remove-GPOZaurrDuplicateObject [[-LimitProcessing] <Int32>] [[-Forest] <String>] [[-ExcludeDomains] <String[]>] Remove-GPOZaurrDuplicateObject [[-LimitProcessing] <int>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>]
[[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>] [-WhatIf] [-Confirm]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Remove-GPOZaurrDuplicateObject -Forest "contoso.com" -IncludeDomains "domain1.com", "domain2.com" -ExcludeDomains "domain3.com" -LimitProcessing 5
``` ```
{{ Add example description here }} Description:
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
{{ Fill ExcludeDomains Description }} Specifies an array of domains to exclude from the duplicate GPO removal process.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional information about the forest.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest where the duplicate GPOs are located.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domains to include in the duplicate GPO removal process.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -LimitProcessing ### -LimitProcessing
{{ Fill LimitProcessing Description }} Specifies the maximum number of duplicate GPOs to process. Default is set to [int32]::MaxValue.
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 0 Position: 0
Default value: None Default value: 2147483647
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
```
### -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
@@ -143,11 +114,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+57 -84
View File
@@ -1,219 +1,191 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Remove-GPOZaurrFolders # Remove-GPOZaurrFolders
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Removes specified GPOZaurr folders and backs them up to a specified path.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Remove-GPOZaurrFolders [[-BackupPath] <String>] [-BackupDated] [[-Type] <String[]>] [-FolderType] <String> Remove-GPOZaurrFolders [[-BackupPath] <string>] [[-Type] <string[]>] [-FolderType] <string> [[-FolderName] <string[]>] [[-LimitProcessing] <int>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-BackupDated] [-WhatIf] [-Confirm] [<CommonParameters>]
[[-FolderName] <String[]>] [[-LimitProcessing] <Int32>] [[-Forest] <String>] [[-ExcludeDomains] <String[]>]
[[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>] [-WhatIf] [-Confirm]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Remove-GPOZaurrFolders -BackupPath "C:\Backups" -BackupDated -Type 'All' -FolderType 'NTFRS' -FolderName "Folder1" -LimitProcessing 10 -Forest "ExampleForest" -ExcludeDomains "Domain1" -IncludeDomains "Domain2" -ExtendedForestInformation $info
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
{{ Fill BackupDated Description }} Indicates whether the backup path should include a timestamp.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -BackupPath ### -BackupPath
{{ Fill BackupPath Description }} The path where the GPOZaurr folders will be backed up.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
```
### -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
{{ Fill ExcludeDomains Description }} Specifies domains to exclude from processing.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional forest information.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -FolderName ### -FolderName
{{ Fill FolderName Description }} Specifies the name of the folder to remove.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -FolderType ### -FolderType
{{ Fill FolderType Description }} Specifies the type of folders to remove. Options are 'NTFRS' or 'Empty'.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: NTFRS, Empty Possible 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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest to target.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies domains to include in processing.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -LimitProcessing ### -LimitProcessing
{{ Fill LimitProcessing Description }} Limits the number of folders to process.
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: None Default value: 2147483647
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -Type ### -Type
{{ Fill Type Description }} Specifies the type of folders to remove. Options are 'All', 'Netlogon', or 'Sysvol'.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: All, Netlogon, Sysvol Possible values: All, Netlogon, Sysvol
Required: False Required: False
Position: 1 Position: 1
Default value: None Default value: All
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
```
### -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
@@ -221,11 +193,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+46 -73
View File
@@ -1,171 +1,143 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Remove-GPOZaurrLegacyFiles # Remove-GPOZaurrLegacyFiles
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Removes legacy Group Policy Objects (GPO) files from specified domains.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Remove-GPOZaurrLegacyFiles [[-BackupPath] <String>] [-BackupDated] [-RemoveEmptyFolders] [[-Forest] <String>] Remove-GPOZaurrLegacyFiles [[-BackupPath] <string>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-LimitProcessing] <int>] [-BackupDated] [-RemoveEmptyFolders] [-WhatIf] [-Confirm] [<CommonParameters>]
[[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>] [[-LimitProcessing] <Int32>] [-WhatIf]
[-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Remove-GPOZaurrLegacyFiles -BackupPath "C:\GPOBackups" -BackupDated -RemoveEmptyFolders -Forest "Contoso" -IncludeDomains "Domain1", "Domain2" -ExcludeDomains "Domain3" -LimitProcessing 100
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
{{ Fill BackupDated Description }} Indicates whether backup files should be timestamped with the current date and time.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -BackupPath ### -BackupPath
{{ Fill BackupPath Description }} Specifies the path where backup files will be stored.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
```
### -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
{{ Fill ExcludeDomains Description }} Specifies an array of domains to exclude from processing.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest where the GPO files are located.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domains to include for processing.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -LimitProcessing ### -LimitProcessing
{{ Fill LimitProcessing Description }} Specifies the maximum number of GPO files to process.
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 4 Position: 4
Default value: None Default value: 2147483647
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -RemoveEmptyFolders ### -RemoveEmptyFolders
{{ Fill RemoveEmptyFolders Description }} Indicates whether empty folders should be removed after GPO files are deleted.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
```
### -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
@@ -173,11 +145,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+38 -66
View File
@@ -1,156 +1,127 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Remove-GPOZaurrLinkEmptyOU # Remove-GPOZaurrLinkEmptyOU
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Removes Group Policy Object (GPO) links from empty Organizational Units (OUs) in a specified forest.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Remove-GPOZaurrLinkEmptyOU [[-Forest] <String>] [[-ExcludeDomains] <String[]>] [[-IncludeDomains] <String[]>] Remove-GPOZaurrLinkEmptyOU [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-ExcludeOrganizationalUnit] <string[]>] [[-LimitProcessing] <int>] [-WhatIf] [-Confirm] [<CommonParameters>]
[[-ExtendedForestInformation] <IDictionary>] [[-ExcludeOrganizationalUnit] <String[]>]
[[-LimitProcessing] <Int32>] [-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Remove-GPOZaurrLinkEmptyOU -Forest "ContosoForest" -IncludeDomains @("domain1", "domain2") -ExcludeDomains @("domain3") -ExtendedForestInformation $info -ExcludeOrganizationalUnit @("OU=TestOU,DC=contoso,DC=com") -LimitProcessing 100
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
{{ Fill ExcludeDomains Description }} Specifies an array of domains to exclude from processing.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExcludeOrganizationalUnit ### -ExcludeOrganizationalUnit
{{ Fill ExcludeOrganizationalUnit Description }} Specifies an array of OUs to exclude from processing.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional information about the forest.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the name of the forest to target for processing.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domains to include for processing.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -LimitProcessing ### -LimitProcessing
{{ Fill LimitProcessing Description }} Specifies the maximum number of OUs to process.
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 5 Position: 5
Default value: None Default value: 2147483647
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
```
### -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
@@ -158,11 +129,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+9 -280
View File
@@ -1,42 +1,16 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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
### Global (Default) Remove-GPOZaurrPermission
```
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
@@ -44,270 +18,25 @@ Remove-GPOZaurrPermission -GPOGuid <String> [-Principal <String[]>] [-PrincipalT
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} Remove-GPOZaurrPermission
``` ```
{{ 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
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+48 -65
View File
@@ -1,156 +1,138 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Remove-GPOZaurrWMI # Remove-GPOZaurrWMI
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Removes Group Policy WMI filters based on specified criteria.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Remove-GPOZaurrWMI [[-Guid] <Guid[]>] [[-Name] <String[]>] [[-Forest] <String>] [[-ExcludeDomains] <String[]>] Remove-GPOZaurrWMI [[-Guid] <guid[]>] [[-Name] <string[]>] [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [-WhatIf] [-Confirm] [<CommonParameters>]
[[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>] [-WhatIf] [-Confirm]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Remove-GPOZaurrWMI -Guid "12345678-1234-1234-1234-123456789012"
``` ```
{{ Add example description here }} Description
-----------
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
{{ Fill ExcludeDomains Description }} Specifies an array of domains to exclude from the removal process.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional information about the forest.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest name where the WMI filters are located.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Guid ### -Guid
{{ Fill Guid Description }} Specifies an array of GUIDs of the WMI filters to be removed.
```yaml ```yaml
Type: Guid[] Type: Guid[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domains to include in the removal process.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Name ### -Name
{{ Fill Name Description }} Specifies an array of names of the WMI filters to be removed.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
```
### -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
@@ -158,11 +140,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+61 -88
View File
@@ -1,84 +1,52 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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[]>] Repair-GPOZaurrBrokenLink [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-LimitProcessing] <int>] [-WhatIf] [-Confirm] [<CommonParameters>]
[[-ExtendedForestInformation] <IDictionary>] [[-LimitProcessing] <Int32>] [-WhatIf] [-Confirm]
[<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
Removes any link to GPO that no longer exists. 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.
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
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: (All)
Aliases: ForestName
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains ### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
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: False Accept wildcard characters: True
```
### -IncludeDomains
Include only specific domains, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Domain, Domains
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
@@ -86,61 +54,63 @@ Ability to provide Forest Information from another command to speed up processin
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: 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: 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
```
### -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: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### -LimitProcessing ### -LimitProcessing
Allows to specify maximum number of items that will be fixed in a single run. Allows to specify maximum number of items that will be fixed in a single run. It doesn't affect amount of GPOs processed
It doesn't affect amount of GPOs processed
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 5 Position: 4
Default value: 0 Default value: 0
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
```
### -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
@@ -148,9 +118,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+58 -85
View File
@@ -1,21 +1,17 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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[]>] Repair-GPOZaurrNetLogonOwner [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-Principal] <string>] [[-LimitProcessing] <int>] [-WhatIf] [-Confirm] [<CommonParameters>]
[[-ExtendedForestInformation] <IDictionary>] [[-Principal] <String>] [[-LimitProcessing] <Int32>] [-WhatIf]
[-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -24,55 +20,27 @@ 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
### -Forest
Target different Forest, by default current forest is used
```yaml
Type: String
Parameter Sets: (All)
Aliases: ForestName
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -ExcludeDomains ### -ExcludeDomains
Exclude domain from search, by default whole forest is scanned Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
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: False Accept wildcard characters: True
```
### -IncludeDomains
Include only specific domains, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Domain, Domains
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
@@ -80,77 +48,79 @@ Ability to provide Forest Information from another command to speed up processin
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: 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: False Accept wildcard characters: True
``` ```
### -Principal ### -Forest
Provide named owner. Target different Forest, by default current forest is used
If not provided default S-1-5-32-544 is used.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases: ForestName
Possible values:
Required: False Required: False
Position: 5 Position: 0
Default value: S-1-5-32-544 Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: 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: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
``` ```
### -LimitProcessing ### -LimitProcessing
Allows to specify maximum number of items that will be fixed in a single run. Allows to specify maximum number of items that will be fixed in a single run. It doesn't affect amount of GPOs processed
It doesn't affect amount of GPOs processed
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 6 Position: 5
Default value: 2147483647 Default value: 2147483647
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -WhatIf ### -Principal
Shows what would happen if the cmdlet runs. Provide named owner. If not provided default S-1-5-32-544 is used.
The cmdlet is not run.
```yaml ```yaml
Type: SwitchParameter Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: wi Aliases:
Possible values:
Required: False Required: False
Position: Named Position: 4
Default value: None Default value: S-1-5-32-544
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
```
### -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
@@ -158,9 +128,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+38 -67
View File
@@ -1,157 +1,127 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Repair-GPOZaurrPermission # Repair-GPOZaurrPermission
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Repairs permissions for Group Policy Objects (GPOs) based on specified criteria.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Repair-GPOZaurrPermission [-Type] <String[]> [[-Forest] <String>] [[-ExcludeDomains] <String[]>] Repair-GPOZaurrPermission [-Type] <string[]> [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-LimitProcessing] <int>] [-WhatIf] [-Confirm] [<CommonParameters>]
[[-IncludeDomains] <String[]>] [[-ExtendedForestInformation] <IDictionary>] [[-LimitProcessing] <Int32>]
[-WhatIf] [-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Repair-GPOZaurrPermission -Type 'All' -Forest 'ContosoForest' -IncludeDomains @('Domain1', 'Domain2') -ExcludeDomains @('Domain3') -ExtendedForestInformation $info -LimitProcessing 100
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
{{ Fill ExcludeDomains Description }} Specifies an array of domains to exclude from the analysis.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional information about the forest.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest name to analyze GPO permissions.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domains to include in the analysis.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -LimitProcessing ### -LimitProcessing
{{ Fill LimitProcessing Description }} Specifies the maximum number of GPOs to process.
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 5 Position: 5
Default value: None Default value: 2147483647
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -Type ### -Type
{{ Fill Type Description }} Specifies the type of permissions to repair. Valid values are 'AuthenticatedUsers', 'Unknown', 'System', 'Administrative', and 'All'.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Accepted values: AuthenticatedUsers, Unknown, System, Administrative, All Possible 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: False Accept wildcard characters: True
```
### -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
@@ -159,11 +129,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+57 -82
View File
@@ -1,186 +1,160 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Repair-GPOZaurrPermissionConsistency # Repair-GPOZaurrPermissionConsistency
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Repairs permission consistency for Group Policy Objects (GPOs) in a specified domain or forest.
## SYNTAX ## SYNTAX
### Default (Default) ### Default (Default)
``` ```powershell
Repair-GPOZaurrPermissionConsistency [-Forest <String>] [-ExcludeDomains <String[]>] Repair-GPOZaurrPermissionConsistency [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-LimitProcessing <int>] [-WhatIf] [-Confirm] [<CommonParameters>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-LimitProcessing <Int32>] [-WhatIf]
[-Confirm] [<CommonParameters>]
``` ```
### GPOName ### GPOName
``` ```powershell
Repair-GPOZaurrPermissionConsistency [-GPOName <String>] [-Forest <String>] [-ExcludeDomains <String[]>] Repair-GPOZaurrPermissionConsistency [-GPOName <string>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-LimitProcessing <int>] [-WhatIf] [-Confirm] [<CommonParameters>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-LimitProcessing <Int32>] [-WhatIf]
[-Confirm] [<CommonParameters>]
``` ```
### GPOGUID ### GPOGUID
``` ```powershell
Repair-GPOZaurrPermissionConsistency [-GPOGuid <String>] [-Forest <String>] [-ExcludeDomains <String[]>] Repair-GPOZaurrPermissionConsistency [-GPOGuid <string>] [-Forest <string>] [-ExcludeDomains <string[]>] [-IncludeDomains <string[]>] [-ExtendedForestInformation <IDictionary>] [-LimitProcessing <int>] [-WhatIf] [-Confirm] [<CommonParameters>]
[-IncludeDomains <String[]>] [-ExtendedForestInformation <IDictionary>] [-LimitProcessing <Int32>] [-WhatIf]
[-Confirm] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Repair-GPOZaurrPermissionConsistency -GPOName "ExampleGPO" -Forest "example.com"
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
{{ Fill ExcludeDomains Description }} Specifies an array of domains to exclude from the repair process.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: Default, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
{{ Fill ExtendedForestInformation Description }} Specifies additional information about the forest.
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: Default, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### -Forest ### -Forest
{{ Fill Forest Description }} Specifies the forest where the GPOs are located.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: Default, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### -GPOGuid ### -GPOGuid
{{ Fill GPOGuid Description }} Specifies the GUID of the GPO to repair.
```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: False Accept wildcard characters: True
``` ```
### -GPOName ### -GPOName
{{ Fill GPOName Description }} Specifies the name of the GPO to repair.
```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: False Accept wildcard characters: True
``` ```
### -IncludeDomains ### -IncludeDomains
{{ Fill IncludeDomains Description }} Specifies an array of domains to include in the repair process.
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: Default, GPOName, GPOGUID
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: False Accept wildcard characters: True
``` ```
### -LimitProcessing ### -LimitProcessing
{{ Fill LimitProcessing Description }} Specifies the maximum number of GPOs to process.
```yaml ```yaml
Type: Int32 Type: Int32
Parameter Sets: (All) Parameter Sets: Default, GPOName, GPOGUID
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: False Accept wildcard characters: True
```
### -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
@@ -188,11 +162,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+40 -32
View File
@@ -1,109 +1,116 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Restore-GPOZaurr # Restore-GPOZaurr
## SYNOPSIS ## SYNOPSIS
{{ Fill in the Synopsis }} Restores Group Policy Objects (GPOs) from a specified backup folder.
## SYNTAX ## SYNTAX
### __AllParameterSets
``` ```powershell
Restore-GPOZaurr [-BackupFolder] <String> [[-DisplayName] <String>] [[-NewDisplayName] <String>] Restore-GPOZaurr [-BackupFolder] <string> [[-DisplayName] <string>] [[-NewDisplayName] <string>] [[-Domain] <string>] [-SkipBackupSummary] [<CommonParameters>]
[[-Domain] <String>] [-SkipBackupSummary] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
{{ Fill in the 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.
## EXAMPLES ## EXAMPLES
### Example 1 ### EXAMPLE 1
```powershell ```powershell
PS C:\> {{ Add example code here }} PS > Restore-GPOZaurr -BackupFolder 'C:\GPOBackups' -DisplayName 'TestGPO'
```
### EXAMPLE 2
```powershell
PS > Restore-GPOZaurr -BackupFolder 'C:\GPOBackups' -DisplayName 'TestGPO' -NewDisplayName 'NewTestGPO' -Domain 'example.com'
``` ```
{{ Add example description here }}
## PARAMETERS ## PARAMETERS
### -BackupFolder ### -BackupFolder
{{ Fill BackupFolder Description }} The path to the folder containing the GPO backups.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -DisplayName ### -DisplayName
{{ Fill DisplayName Description }} The display name of the GPO to be restored.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -Domain ### -Domain
{{ Fill Domain Description }} (Optional) The domain name where the GPO should be restored.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -NewDisplayName ### -NewDisplayName
{{ Fill NewDisplayName Description }} (Optional) The new display name for the restored GPO.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### -SkipBackupSummary ### -SkipBackupSummary
{{ Fill SkipBackupSummary Description }} (Switch) Skip displaying the backup summary information.
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -111,11 +118,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
### None - `None`
## OUTPUTS ## OUTPUTS
### System.Object - `None`
## NOTES
## RELATED LINKS ## RELATED LINKS
- None
+58 -51
View File
@@ -1,20 +1,17 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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[]>] Save-GPOZaurrFiles [[-Forest] <string>] [[-ExcludeDomains] <string[]>] [[-IncludeDomains] <string[]>] [[-ExtendedForestInformation] <IDictionary>] [[-GPOPath] <string[]>] [-DeleteExisting] [<CommonParameters>]
[[-ExtendedForestInformation] <IDictionary>] [[-GPOPath] <String[]>] [-DeleteExisting] [<CommonParameters>]
``` ```
## DESCRIPTION ## DESCRIPTION
@@ -23,25 +20,27 @@ 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
### -Forest ### -DeleteExisting
Target different Forest, by default current forest is used Delete existing files before saving new ones
```yaml ```yaml
Type: String Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: ForestName Aliases:
Possible values:
Required: False Required: False
Position: 1 Position: named
Default value: None Default value: False
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -ExcludeDomains ### -ExcludeDomains
@@ -49,29 +48,15 @@ Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
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: False Accept wildcard characters: True
```
### -IncludeDomains
Include only specific domains, by default whole forest is scanned
```yaml
Type: String[]
Parameter Sets: (All)
Aliases: Domain, Domains
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -ExtendedForestInformation ### -ExtendedForestInformation
@@ -79,14 +64,31 @@ Ability to provide Forest Information from another command to speed up processin
```yaml ```yaml
Type: IDictionary Type: IDictionary
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: 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: 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 ### -GPOPath
@@ -94,29 +96,31 @@ Path where to save XML files from GPOReport
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
Possible values:
Required: False Required: False
Position: 5 Position: 4
Default value: None Default value: None
Accept pipeline input: False Accept pipeline input: False
Accept wildcard characters: False Accept wildcard characters: True
``` ```
### -DeleteExisting ### -IncludeDomains
Delete existing files before saving new ones Include only specific domains, by default whole forest is scanned
```yaml ```yaml
Type: SwitchParameter Type: String[]
Parameter Sets: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases: Domain, Domains
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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -124,9 +128,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+36 -37
View File
@@ -1,71 +1,67 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Set-GPOOwner # Set-GPOOwner
## SYNOPSIS ## SYNOPSIS
Used within Invoke-GPOZaurrPermission only. Used within Invoke-GPOZaurrPermission only. Set new group policy owner.
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. Used within Invoke-GPOZaurrPermission only. Set new group policy owner.
Set new group policy owner.
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
``` ```powershell
Invoke-GPOZaurrPermission -Verbose -SearchBase 'OU=Computers,OU=Production,DC=ad,DC=evotec,DC=xyz' { PS > 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: (All) Parameter Sets: __AllParameterSets
Aliases: Aliases:
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: False Accept wildcard characters: True
```
### -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
@@ -73,9 +69,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+169 -198
View File
@@ -1,203 +1,51 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
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[]>] 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>]
[-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[]>] 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>]
[-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. 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.
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
### -Type ### -Action
Unknown - finds unknown Owners and sets them to Administrative (Domain Admins) or chosen principal {{ Fill Action Description }}
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 Parameter Sets: Type, Named
Aliases: Aliases:
Possible values: OnlyAD, OnlyFileSystem
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: False Accept wildcard characters: True
```
### -GPOName
Name of GPO.
By default all GPOs are targetted
```yaml
Type: String
Parameter Sets: Named
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -GPOGuid
GUID of GPO.
By default all GPOs are targetted
```yaml
Type: String
Parameter Sets: Named
Aliases: GUID, GPOID
Required: False
Position: Named
Default value: None
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
```
### -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
```
### -Principal
Parameter description
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -SkipSysvol
Set GPO Owner only in Active Directory.
By default GPO Owner is being set in both places
```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
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: 2147483647
Accept pipeline input: False
Accept wildcard characters: False
``` ```
### -ApprovedOwner ### -ApprovedOwner
@@ -205,29 +53,47 @@ Accept wildcard characters: False
```yaml ```yaml
Type: String[] Type: String[]
Parameter Sets: (All) Parameter Sets: Type, Named
Aliases: Exclusion, Exclusions Aliases: Exclusion, Exclusions
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: False Accept wildcard characters: True
``` ```
### -Action ### -ExcludeDomains
{{ Fill Action Description }} Exclude domain from search, by default whole forest is scanned
```yaml ```yaml
Type: String Type: String[]
Parameter Sets: (All) Parameter Sets: Type, 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: False Accept wildcard characters: True
```
### -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 ### -Force
@@ -235,45 +101,147 @@ Pushes new owner regardless if it's already set or not
```yaml ```yaml
Type: SwitchParameter Type: SwitchParameter
Parameter Sets: (All) Parameter Sets: Type, Named
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: False Accept wildcard characters: True
``` ```
### -WhatIf ### -Forest
Shows what would happen if the cmdlet runs. Target different Forest, by default current forest is used
The cmdlet is not run.
```yaml
Type: String
Parameter Sets: Type, Named
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 targetted
```yaml
Type: String
Parameter Sets: Named
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:
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: Type, Named
Aliases: Domain, Domains
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -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: Type, Named
Aliases:
Possible values:
Required: False
Position: named
Default value: 2147483647
Accept pipeline input: False
Accept wildcard characters: True
```
### -Principal
Parameter description
```yaml
Type: String
Parameter Sets: Type, Named
Aliases:
Possible values:
Required: False
Position: named
Default value: None
Accept pipeline input: False
Accept wildcard characters: True
```
### -SkipSysvol
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: (All) Parameter Sets: Type, Named
Aliases: wi 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: False Accept wildcard characters: True
``` ```
### -Confirm ### -Type
Prompts you for confirmation before running the cmdlet. 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: SwitchParameter Type: String
Parameter Sets: (All) Parameter Sets: Type
Aliases: cf Aliases:
Possible values: Unknown, NotAdministrative, NotMatching, Inconsistent, All
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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -281,9 +249,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+12 -163
View File
@@ -1,193 +1,42 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Set-GPOZaurrStatus # Set-GPOZaurrStatus
## SYNOPSIS ## SYNOPSIS
Enables or disables user/computer section of Group Policy. {{ Fill in the Synopsis }}
## SYNTAX ## SYNTAX
```powershell
### GPOName (Default) Set-GPOZaurrStatus
```
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
Enables or disables user/computer section of Group Policy. {{ Fill in the Description }}
## EXAMPLES ## EXAMPLES
### EXAMPLE 1 ### EXAMPLE 1
``` ```powershell
Set-GPOZaurrStatus -Name 'TEST | Empty GPO - AD.EVOTEC.PL CrossDomain GPO' -Status AllSettingsEnabled -Verbose Set-GPOZaurrStatus
``` ```
### 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
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
+39 -41
View File
@@ -1,69 +1,63 @@
--- ---
external help file: GPOZaurr-help.xml external help file: GPOZaurr-help.xml
Module Name: GPOZaurr Module Name: GPOZaurr
online version: online version: https://github.com/EvotecIT/GPOZaurr
schema: 2.0.0 schema: 2.0.0
--- ---
# Skip-GroupPolicy # Skip-GroupPolicy
## SYNOPSIS ## SYNOPSIS
Used within ScriptBlocks only. Used within ScriptBlocks only. Allows to exclude Group Policy from being affected by fixes
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. 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.
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
Optimize-GPOZaurr -All -WhatIf -Verbose -LimitProcessing 2 { PS > 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
Remove-GPOZaurr -Type Empty, Unlinked -BackupPath "$Env:UserProfile\Desktop\GPO" -BackupDated -LimitProcessing 2 -Verbose -WhatIf { PS > 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 1'
Skip-GroupPolicy -Name 'TEST | Drive Mapping 2' -DomaiName 'ad.evotec.pl' Skip-GroupPolicy -Name 'TEST | Drive Mapping 2' -DomaiName 'ad.evotec.pl'
} }
```
## PARAMETERS ## PARAMETERS
### -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: Name, Guid
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: False Accept wildcard characters: True
``` ```
### -GUID ### -GUID
@@ -73,28 +67,29 @@ Accept wildcard characters: False
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: False Accept wildcard characters: True
``` ```
### -DomaiName ### -Name
Define DomainName where Group Policy is located. Define Group Policy Name to skip
Otherwise each domain will be checked and skipped if found with same name.
```yaml ```yaml
Type: String Type: String
Parameter Sets: (All) 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: False Accept wildcard characters: True
``` ```
### CommonParameters ### CommonParameters
@@ -102,9 +97,12 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
## INPUTS ## INPUTS
- `None`
## OUTPUTS ## OUTPUTS
## NOTES - `None`
General notes
## RELATED LINKS ## RELATED LINKS
- None
@@ -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 Inhertiance # Get same output DN, CanonicalName, BlockInheritance (True/False) + Users/Computers + UsersCount/ComputerCount for those with Blocked Inheritance
# 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/
+18 -16
View File
@@ -4,35 +4,37 @@
CmdletsToExport = @() CmdletsToExport = @()
CompanyName = 'Evotec' CompanyName = 'Evotec'
CompatiblePSEditions = @('Desktop') CompatiblePSEditions = @('Desktop')
Copyright = '(c) 2011 - 2024 Przemyslaw Klys @ Evotec. All rights reserved.' Copyright = '(c) 2011 - 2026 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-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')
GUID = 'f7d4c9e4-0298-4f51-ad77-e8e3febebbde' GUID = 'f7d4c9e4-0298-4f51-ad77-e8e3febebbde'
ModuleVersion = '1.1.8' ModuleVersion = '1.1.10'
PowerShellVersion = '5.1' PowerShellVersion = '5.1'
PrivateData = @{ PrivateData = @{
PSData = @{ PSData = @{
ExternalModuleDependencies = @('CimCmdlets', 'Microsoft.PowerShell.Management', 'Microsoft.PowerShell.Utility', 'Microsoft.PowerShell.Security') ExternalModuleDependencies = @('CimCmdlets')
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.1' ModuleVersion = '1.0.3'
}, @{ }, @{
Guid = 'ee272aa8-baaa-4edf-9f45-b6d6f7d844fe' Guid = 'ee272aa8-baaa-4edf-9f45-b6d6f7d844fe'
ModuleName = 'PSSharedGoods' ModuleName = 'PSSharedGoods'
ModuleVersion = '0.0.300' ModuleVersion = '0.0.312'
}, @{ }, @{
Guid = '9fc9fd61-7f11-4f4b-a527-084086f1905f' Guid = '9fc9fd61-7f11-4f4b-a527-084086f1905f'
ModuleName = 'ADEssentials' ModuleName = 'ADEssentials'
ModuleVersion = '0.0.226' ModuleVersion = '1.0.4'
}, @{ }, @{
Guid = 'a7bdf640-f5cb-4acf-9de0-365b322d245c' Guid = 'a7bdf640-f5cb-4acf-9de0-365b322d245c'
ModuleName = 'PSWriteHTML' ModuleName = 'PSWriteHTML'
ModuleVersion = '1.27.0' ModuleVersion = '1.41.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
} }
+40 -2
View File
@@ -92,7 +92,26 @@
#> #>
if ($Value.Value.Element) { if ($Value.Value.Element) {
$Settings["$SubName"] = $Value.Value.Element.Data -join '; ' [Array] $ElementValues = foreach ($Element in @($Value.Value.Element)) {
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"
@@ -174,7 +193,26 @@
#> #>
if ($Value.Value.Element) { if ($Value.Value.Element) {
$CreateGPO["$SubName"] = $Value.Value.Element.Data -join '; ' [Array] $ElementValues = foreach ($Element in @($Value.Value.Element)) {
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"
@@ -0,0 +1,79 @@
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
@@ -0,0 +1,73 @@
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" }
'ComputerSetttingsVersionIdentical' = if ($XMLContent.GPO.Computer.VersionDirectory -eq $XMLContent.GPO.Computer.VersionSysvol) { $true } else { $false } 'ComputerSettingsVersionIdentical' = 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 Inhertiance' Name = 'Group Policy Blocked Inheritance'
Enabled = $true Enabled = $true
ActionRequired = $null ActionRequired = $null
Data = $null Data = $null
+28 -9
View File
@@ -494,12 +494,15 @@
Settings = 'Policy' Settings = 'Policy'
} }
) )
GPOPath = 'Policies -> Administrative Templates -> LAPS' GPOPath = @(
'Policies -> Administrative Templates -> LAPS'
'Policies -> Administrative Templates -> System -> LAPS'
)
Code = { Code = {
ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'LAPS' ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'LAPS', 'System/LAPS*'
} }
CodeSingle = { CodeSingle = {
ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'LAPS' -SingleObject ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'LAPS', 'System/LAPS*' -SingleObject
} }
} }
Lithnet = @{ Lithnet = @{
@@ -1169,13 +1172,26 @@
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 = @{
@@ -1186,12 +1202,15 @@
Settings = 'Policy' Settings = 'Policy'
} }
) )
GPOPath = 'Policies -> Administrative Templates -> Windows Components/Microsoft Defender Antivirus/Microsoft Defender Exploit Guard' GPOPath = @(
'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/Microsoft Defender Antivirus/Microsoft Defender Exploit Guard*' 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*'
} }
CodeSingle = { CodeSingle = {
ConvertTo-XMLGenericPolicy -GPO $GPO -Category 'Windows Components/Microsoft Defender Antivirus/Microsoft Defender Exploit Guard*' -SingleObject 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
} }
} }
# 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
+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) {
+4 -4
View File
@@ -126,6 +126,10 @@
} }
} }
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) {
@@ -201,10 +205,6 @@
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,6 +59,10 @@
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')]
@@ -283,6 +287,39 @@
} }
} }
} }
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 "C:\Temp\GPOReport.html" Invoke-GPOZaurrSupport -Type HTML -ComputerName "RemoteComputer" -UserName "Admin" -Path (Join-Path $env: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 "C:\Temp\GPOReport.xml" -Online 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. 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/vpre/GPOZaurr.svg?label=powershell%20gallery%20preview&colorB=yellow"></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://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
@@ -0,0 +1,134 @@
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
@@ -0,0 +1,46 @@
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
@@ -0,0 +1,19 @@
# 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
@@ -0,0 +1,22 @@
---
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>
@@ -0,0 +1,43 @@
---
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)
@@ -0,0 +1,34 @@
---
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)
@@ -0,0 +1,18 @@
---
title: "GPOZaurr Docs"
description: "Curated documentation workspace for GPOZaurr."
layout: "docs"
---
GPOZaurr documentation now uses the same project-scoped workspace layout as the API so you can browse without losing context.
## Start here
- [Documentation overview](/projects/gpozaurr/docs/overview/)
- [Install](/projects/gpozaurr/docs/install/)
- [Back to project overview](/projects/gpozaurr/)
## Notes
- API reference lives under [/projects/gpozaurr/api/](/projects/gpozaurr/api/).
- Example scripts remain attached to the project and can be promoted into curated walkthroughs over time.
@@ -0,0 +1,21 @@
---
title: "GPOZaurr Install"
description: "Installation options for GPOZaurr."
---
## PowerShell Gallery
```powershell
Install-Module GPOZaurr -Scope CurrentUser
```
## Source checkout
```bash
git clone https://github.com/EvotecIT/GPOZaurr.git
```
## Next steps
- Browse API: [/projects/gpozaurr/api/](/projects/gpozaurr/api/)
- Return to project overview: [/projects/gpozaurr/](/projects/gpozaurr/)
@@ -0,0 +1,18 @@
---
title: "GPOZaurr Overview"
description: "Overview for GPOZaurr on Evotec website."
---
GPOZaurr is a PowerShell module for Group Policy diagnostics, analysis, and remediation workflows.
## What to use here
- Use this Docs area for curated onboarding and operational guidance.
- Use the API tab for cmdlet reference generated from project API artifacts.
- Use the project overview as the landing page for curated workflows until dedicated examples are published.
## Quick links
- Project overview: [/projects/gpozaurr/](/projects/gpozaurr/)
- API tab: [/projects/gpozaurr/api/](/projects/gpozaurr/api/)
- Source repository: [EvotecIT/GPOZaurr](https://github.com/EvotecIT/GPOZaurr)