GPO-Restore

GPO-Restore

EineRoutine die aus dem GPO-Backup alle GPO-Backup-Ordner durchsucht und dabei das Datum der Erstellung des Backups in einem Out-GridView zur Wiederherstellung anbietet. Die gewünschte GPO aus dem Backup auswählen und auf OK klicken.

$backupfolder = "C:\GPO-Backup"

$GPReportFiles = (ls $backupfolder\*\gpreport.xml)

$ID_Name =@()
foreach($Report in $GPReportFiles)
    {
    [xml]$xmlcontent = Get-Content $Report.Fullname
    $GPOName = $xmlcontent.GPO.Name 
    $BackupCreationTime = $xmlcontent.GPO.ReadTime
    $ID = ($Report.Fullname.Split('{')[1]).split('}')[0]
    $object =  1 | select @{n='GPOName';e={$GPOName}},@{n='BackupID';e={$ID}},@{n='creationDate';e={$BackupCreationTime}}
    $ID_Name += $object
    }
$IDtoRestore = $ID_Name | ogv -PassThru

foreach($id in $IDtoRestore)
    {
    $folderOfBackup = (ls $backupfolder -Filter "*$($id.BackupID)*")
    Restore-GPO -BackupId $id.BackupID -Path $backupfolder
    #Import-GPO -BackupId $id.BackupID -Path $backupfolder -TargetName $id.GPOName -CreateIfNeeded:$true
    }
    
    

Leider ist damit kein Transport von einer Domain zu einer Anderen möglich.