mirror of
https://github.com/EvotecIT/GPOZaurr.git
synced 2026-08-31 12:47:59 +00:00
Update
This commit is contained in:
@@ -0,0 +1,86 @@
|
|||||||
|
function ConvertTo-XMLUserRightsAssignment {
|
||||||
|
[cmdletBinding()]
|
||||||
|
param(
|
||||||
|
[PSCustomObject] $GPO,
|
||||||
|
[switch] $SingleObject
|
||||||
|
)
|
||||||
|
|
||||||
|
$UserRightsTranslation = @{
|
||||||
|
SeNetworkLogonRight = 'Access this computer from the network'
|
||||||
|
SeMachineAccountPrivilege = 'Add workstations to domain'
|
||||||
|
SeIncreaseQuotaPrivilege = 'Adjust memory quotas for a process'
|
||||||
|
SeInteractiveLogonRight = 'Allow log on locally'
|
||||||
|
SeBackupPrivilege = 'Back up files and directories'
|
||||||
|
SeChangeNotifyPrivilege = 'Bypass traverse checking Everyone'
|
||||||
|
SeSystemTimePrivilege = 'Change the system time'
|
||||||
|
SeCreatePagefilePrivilege = 'Create a pagefile'
|
||||||
|
SeDebugPrivilege = 'Debug programs'
|
||||||
|
SeEnableDelegationPrivilege = 'Enable computer and user accounts to be trusted for delegation'
|
||||||
|
SeRemoteShutdownPrivilege = 'Force shutdown from a remote system'
|
||||||
|
SeAuditPrivilege = 'Generate security audits'
|
||||||
|
SeIncreaseBasePriorityPrivilege = 'Increase scheduling priority'
|
||||||
|
SeLoadDriverPrivilege = 'Load and unload device drivers'
|
||||||
|
SeBatchLogonRight = 'Log on as a batch job'
|
||||||
|
SeSecurityPrivilege = 'Manage auditing and security log'
|
||||||
|
SeSystemEnvironmentPrivilege = 'Modify firmware environment values'
|
||||||
|
SeProfileSingleProcessPrivilege = 'Profile single process'
|
||||||
|
SeSystemProfilePrivilege = 'Profile system performance'
|
||||||
|
SeUndockPrivilege = 'Remove computer from docking station'
|
||||||
|
SeAssignPrimaryTokenPrivilege = 'Replace a process level token'
|
||||||
|
SeRestorePrivilege = 'Restore files and directories'
|
||||||
|
SeShutdownPrivilege = 'Shut down the system'
|
||||||
|
SeTakeOwnershipPrivilege = 'Take ownership of files or other objects'
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($SingleObject) {
|
||||||
|
$CreateGPO = [ordered]@{
|
||||||
|
DisplayName = $GPO.DisplayName
|
||||||
|
DomainName = $GPO.DomainName
|
||||||
|
GUID = $GPO.GUID
|
||||||
|
GpoType = $GPO.GpoType
|
||||||
|
#GpoCategory = $GPOEntry.GpoCategory
|
||||||
|
#GpoSettings = $GPOEntry.GpoSettings
|
||||||
|
Count = 0
|
||||||
|
Settings = $null
|
||||||
|
}
|
||||||
|
[Array] $CreateGPO['Settings'] = foreach ($Entry in $GPO.DataSet) {
|
||||||
|
foreach ($Member in $Entry.Member) {
|
||||||
|
[PSCustomObject]@{
|
||||||
|
'UserRightsAssignment' = $Entry.Name
|
||||||
|
'UserRightsAssignmentDescription' = $UserRightsTranslation[$Entry.Name]
|
||||||
|
'Name' = $Member.Name.'#text'
|
||||||
|
'Sid' = $Member.SID.'#text'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$CreateGPO['Count'] = $CreateGPO['Settings'].Count
|
||||||
|
$CreateGPO['Linked'] = $GPO.Linked
|
||||||
|
$CreateGPO['LinksCount'] = $GPO.LinksCount
|
||||||
|
$CreateGPO['Links'] = $GPO.Links
|
||||||
|
[PSCustomObject] $CreateGPO
|
||||||
|
} else {
|
||||||
|
foreach ($Entry in $GPO.DataSet) {
|
||||||
|
foreach ($Member in $Entry.Member) {
|
||||||
|
$CreateGPO = [ordered]@{
|
||||||
|
DisplayName = $GPO.DisplayName
|
||||||
|
DomainName = $GPO.DomainName
|
||||||
|
GUID = $GPO.GUID
|
||||||
|
GpoType = $GPO.GpoType
|
||||||
|
#GpoCategory = $GPOEntry.GpoCategory
|
||||||
|
#GpoSettings = $GPOEntry.GpoSettings
|
||||||
|
}
|
||||||
|
$CreateGPO['UserRightsAssignment'] = $Entry.Name
|
||||||
|
$CreateGPO['UserRightsAssignmentDescription'] = $UserRightsTranslation[$Entry.Name]
|
||||||
|
$CreateGPO['Name'] = $Member.Name.'#text'
|
||||||
|
$CreateGPO['Sid'] = $Member.SID.'#text'
|
||||||
|
#$CreateGPO['CreatedTime'] = $GPO.CreatedTime # : 06.06.2020 18:03:36
|
||||||
|
#$CreateGPO['ModifiedTime'] = $GPO.ModifiedTime # : 17.06.2020 16:08:10
|
||||||
|
#$CreateGPO['ReadTime'] = $GPO.ReadTime # : 13.08.2020 10:15:37
|
||||||
|
$CreateGPO['Linked'] = $GPO.Linked
|
||||||
|
$CreateGPO['LinksCount'] = $GPO.LinksCount
|
||||||
|
$CreateGPO['Links'] = $GPO.Links
|
||||||
|
[PSCustomObject] $CreateGPO
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user