mirror of
https://github.com/EvotecIT/GPOZaurr.git
synced 2026-09-04 06:35:22 +00:00
Update
This commit is contained in:
+4
-4
@@ -6,9 +6,9 @@
|
|||||||
CompatiblePSEditions = @('Desktop')
|
CompatiblePSEditions = @('Desktop')
|
||||||
Copyright = '(c) 2011 - 2020 Przemyslaw Klys @ Evotec. All rights reserved.'
|
Copyright = '(c) 2011 - 2020 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', 'Find-CSExtension', 'Get-GPOZaurr', 'Get-GPOZaurrAD', 'Get-GPOZaurrBackupInformation', 'Get-GPOZaurrBroken', 'Get-GPOZaurrDictionary', 'Get-GPOZaurrDuplicateObject', 'Get-GPOZaurrFiles', 'Get-GPOZaurrFilesPolicyDefinition', 'Get-GPOZaurrFolders', 'Get-GPOZaurrInheritance', 'Get-GPOZaurrLegacyFiles', 'Get-GPOZaurrLink', 'Get-GPOZaurrLinkSummary', 'Get-GPOZaurrNetLogon', 'Get-GPOZaurrOwner', 'Get-GPOZaurrPassword', 'Get-GPOZaurrPermission', 'Get-GPOZaurrPermissionConsistency', 'Get-GPOZaurrPermissionRoot', 'Get-GPOZaurrPermissionSummary', 'Get-GPOZaurrSysvolDFSR', 'Get-GPOZaurrWMI', 'Invoke-GPOZaurr', 'Invoke-GPOZaurrContent', 'Invoke-GPOZaurrPermission', 'Invoke-GPOZaurrSupport', 'New-GPOZaurrWMI', 'Remove-GPOPermission', 'Remove-GPOZaurr', 'Remove-GPOZaurrBroken', 'Remove-GPOZaurrDuplicateObject', 'Remove-GPOZaurrFolders', 'Remove-GPOZaurrLegacyFiles', 'Remove-GPOZaurrPermission', 'Remove-GPOZaurrWMI', 'Repair-GPOZaurrNetLogonOwner', 'Repair-GPOZaurrPermissionConsistency', 'Restore-GPOZaurr', 'Save-GPOZaurrFiles', 'Set-GPOOwner', 'Set-GPOZaurrOwner')
|
FunctionsToExport = @('Add-GPOPermission', 'Add-GPOZaurrPermission', 'Backup-GPOZaurr', 'Clear-GPOZaurrSysvolDFSR', 'ConvertFrom-CSExtension', 'Find-CSExtension', 'Get-GPOZaurr', 'Get-GPOZaurrAD', 'Get-GPOZaurrBackupInformation', 'Get-GPOZaurrBroken', 'Get-GPOZaurrDictionary', 'Get-GPOZaurrDuplicateObject', 'Get-GPOZaurrFiles', 'Get-GPOZaurrFilesPolicyDefinition', 'Get-GPOZaurrFolders', 'Get-GPOZaurrInheritance', 'Get-GPOZaurrLegacyFiles', 'Get-GPOZaurrLink', 'Get-GPOZaurrLinkSummary', 'Get-GPOZaurrNetLogon', 'Get-GPOZaurrOwner', 'Get-GPOZaurrPassword', 'Get-GPOZaurrPermission', 'Get-GPOZaurrPermissionConsistency', 'Get-GPOZaurrPermissionRoot', 'Get-GPOZaurrPermissionSummary', 'Get-GPOZaurrSysvolDFSR', '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-GPOZaurrPermission', 'Remove-GPOZaurrWMI', 'Repair-GPOZaurrNetLogonOwner', 'Repair-GPOZaurrPermissionConsistency', 'Restore-GPOZaurr', 'Save-GPOZaurrFiles', 'Set-GPOOwner', 'Set-GPOZaurrOwner')
|
||||||
GUID = 'f7d4c9e4-0298-4f51-ad77-e8e3febebbde'
|
GUID = 'f7d4c9e4-0298-4f51-ad77-e8e3febebbde'
|
||||||
ModuleVersion = '0.0.73'
|
ModuleVersion = '0.0.74'
|
||||||
PowerShellVersion = '5.1'
|
PowerShellVersion = '5.1'
|
||||||
PrivateData = @{
|
PrivateData = @{
|
||||||
PSData = @{
|
PSData = @{
|
||||||
@@ -18,11 +18,11 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
RequiredModules = @(@{
|
RequiredModules = @(@{
|
||||||
ModuleVersion = '0.0.186'
|
ModuleVersion = '0.0.187'
|
||||||
ModuleName = 'PSSharedGoods'
|
ModuleName = 'PSSharedGoods'
|
||||||
Guid = 'ee272aa8-baaa-4edf-9f45-b6d6f7d844fe'
|
Guid = 'ee272aa8-baaa-4edf-9f45-b6d6f7d844fe'
|
||||||
}, @{
|
}, @{
|
||||||
ModuleVersion = '0.0.100'
|
ModuleVersion = '0.0.102'
|
||||||
ModuleName = 'ADEssentials'
|
ModuleName = 'ADEssentials'
|
||||||
Guid = '9fc9fd61-7f11-4f4b-a527-084086f1905f'
|
Guid = '9fc9fd61-7f11-4f4b-a527-084086f1905f'
|
||||||
}, @{
|
}, @{
|
||||||
|
|||||||
@@ -6,7 +6,8 @@
|
|||||||
[switch] $PermissionsOnly,
|
[switch] $PermissionsOnly,
|
||||||
[switch] $OwnerOnly,
|
[switch] $OwnerOnly,
|
||||||
[System.Collections.IDictionary] $ADAdministrativeGroups,
|
[System.Collections.IDictionary] $ADAdministrativeGroups,
|
||||||
[string] $Splitter = [System.Environment]::NewLine
|
[string] $Splitter = [System.Environment]::NewLine,
|
||||||
|
[switch] $ReturnObject
|
||||||
)
|
)
|
||||||
if ($XMLContent.GPO.LinksTo) {
|
if ($XMLContent.GPO.LinksTo) {
|
||||||
$LinkSplit = ([Array] $XMLContent.GPO.LinksTo).Where( { $_.Enabled -eq $true }, 'Split')
|
$LinkSplit = ([Array] $XMLContent.GPO.LinksTo).Where( { $_.Enabled -eq $true }, 'Split')
|
||||||
@@ -215,6 +216,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
'GPOObject' = $GPO
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -13,7 +13,7 @@
|
|||||||
[switch] $PermissionsOnly,
|
[switch] $PermissionsOnly,
|
||||||
[switch] $OwnerOnly,
|
[switch] $OwnerOnly,
|
||||||
[switch] $Limited,
|
[switch] $Limited,
|
||||||
|
[switch] $ReturnObject,
|
||||||
[System.Collections.IDictionary] $ADAdministrativeGroups
|
[System.Collections.IDictionary] $ADAdministrativeGroups
|
||||||
)
|
)
|
||||||
Begin {
|
Begin {
|
||||||
@@ -43,7 +43,7 @@
|
|||||||
Write-Warning "Get-GPOZaurr - Failed to get GPOReport: $($_.Exception.Message). Skipping."
|
Write-Warning "Get-GPOZaurr - Failed to get GPOReport: $($_.Exception.Message). Skipping."
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
Get-XMLGPO -OwnerOnly:$OwnerOnly.IsPresent -XMLContent $XMLContent -GPO $_ -PermissionsOnly:$PermissionsOnly.IsPresent -ADAdministrativeGroups $ADAdministrativeGroups
|
Get-XMLGPO -OwnerOnly:$OwnerOnly.IsPresent -XMLContent $XMLContent -GPO $_ -PermissionsOnly:$PermissionsOnly.IsPresent -ADAdministrativeGroups $ADAdministrativeGroups -ReturnObject:$ReturnObject.IsPresent
|
||||||
} else {
|
} else {
|
||||||
$_
|
$_
|
||||||
}
|
}
|
||||||
@@ -61,7 +61,7 @@
|
|||||||
Write-Warning "Get-GPOZaurr - Failed to get GPOReport: $($_.Exception.Message). Skipping."
|
Write-Warning "Get-GPOZaurr - Failed to get GPOReport: $($_.Exception.Message). Skipping."
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
Get-XMLGPO -OwnerOnly:$OwnerOnly.IsPresent -XMLContent $XMLContent -GPO $_ -PermissionsOnly:$PermissionsOnly.IsPresent -ADAdministrativeGroups $ADAdministrativeGroups
|
Get-XMLGPO -OwnerOnly:$OwnerOnly.IsPresent -XMLContent $XMLContent -GPO $_ -PermissionsOnly:$PermissionsOnly.IsPresent -ADAdministrativeGroups $ADAdministrativeGroups -ReturnObject:$ReturnObject.IsPresent
|
||||||
} else {
|
} else {
|
||||||
$_
|
$_
|
||||||
}
|
}
|
||||||
@@ -79,7 +79,7 @@
|
|||||||
Write-Warning "Get-GPOZaurr - Failed to get GPOReport: $($_.Exception.Message). Skipping."
|
Write-Warning "Get-GPOZaurr - Failed to get GPOReport: $($_.Exception.Message). Skipping."
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
Get-XMLGPO -OwnerOnly:$OwnerOnly.IsPresent -XMLContent $XMLContent -GPO $_ -PermissionsOnly:$PermissionsOnly.IsPresent -ADAdministrativeGroups $ADAdministrativeGroups
|
Get-XMLGPO -OwnerOnly:$OwnerOnly.IsPresent -XMLContent $XMLContent -GPO $_ -PermissionsOnly:$PermissionsOnly.IsPresent -ADAdministrativeGroups $ADAdministrativeGroups -ReturnObject:$ReturnObject.IsPresent
|
||||||
} else {
|
} else {
|
||||||
$_
|
$_
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,19 @@
|
|||||||
|
function Optimize-GPOZaurr {
|
||||||
|
[cmdletBinding()]
|
||||||
|
param(
|
||||||
|
|
||||||
|
)
|
||||||
|
|
||||||
|
$GPOS = Get-GPOZaurr -Forest $Forest -IncludeDomains $IncludeDomains -ExcludeDomains $ExcludeDomains -ExtendedForestInformation $ExtendedForestInformation
|
||||||
|
foreach ($GPO in $GPOS) {
|
||||||
|
if ($GPO.UserSettingsAvailable -eq $false -and $GPO.ComputerSettingsAvailable -eq $false) {
|
||||||
|
if ($GPO.Enabled -ne 'All setttings disabled') {
|
||||||
|
# $GPO
|
||||||
|
}
|
||||||
|
} elseif ($GPO.UserSettingsAvailable -eq $false) {
|
||||||
|
|
||||||
|
} elseif ($GPO.ComputerSettingsAvailable -eq $false) {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user