Требуется создать пользователя от которого будет запускаться скрипт.
Назначить права backup operator, dhcp admin
Разрешить logon as a batch job для пользователя
#определяем переменные
$newfoldername = get-date -f 'dd.MM.yyyy'
New-Item -Path "\\backupserver\DHCP_backup\$($env:computername)_DHCP_BACKUP\" -Name $newfoldername -Type Directory
$backupdestination = "\\backupserver\DHCP_backup\$($env:computername)_DHCP_BACKUP\$newfoldername\"
# Запускаем бекап dhcp сервера. Вместо domain\user указываем пользователя от которого запускается скрипт. Заранее создать папку C:\DHCP_bckp
Backup-DhcpServer -path C:\DHCP_bckp
$acl = get-acl -Path C:\DHCP_bckp\DhcpCfg
$AccessRule = New-Object System.Security.AccessControl.FileSystemAccessRule `
("domain\user","FullControl","Allow")
$acl.SetAccessRule($AccessRule)
$acl | Set-Acl -Path C:\DHCP_bckp\DhcpCfg
#Копируется файл в общую папку
Copy-Item -Path C:\DHCP_bckp\* -Destination $backupdestination -Recurse
#Удаляем бекапы старше 7 дней
$Now = (Get-Date).AddDays(-7)
$backups = "\\backupserver\DHCP_backup\"
Get-ChildItem $backups -Recurse -Force | Where{$_.LastWriteTime -le $Now} | Remove-Item -Force -ErrorAction SilentlyContinue