Update AdHoc-Backup.ps1

This commit is contained in:
Mattia Tadini 2025-11-10 13:02:32 +00:00
parent b626f78b3a
commit f804849937

View File

@ -473,14 +473,15 @@ function Backup-SqlDatabases {
# --- PRE-FLIGHT: Concedi a NT AUTHORITY\SYSTEM il permesso server-level 'BACKUP ANY DATABASE' --- # --- PRE-FLIGHT: Concedi a NT AUTHORITY\SYSTEM il permesso server-level 'BACKUP ANY DATABASE' ---
try { try {
$sqlGrant = @' $sqlLines = @(
USE master; 'USE master;'
IF NOT EXISTS (SELECT 1 FROM sys.server_principals WHERE name = N'NT AUTHORITY\SYSTEM') "IF NOT EXISTS (SELECT 1 FROM sys.server_principals WHERE name = N'NT AUTHORITY\\SYSTEM')"
CREATE LOGIN [NT AUTHORITY\SYSTEM] FROM WINDOWS; ' CREATE LOGIN [NT AUTHORITY\SYSTEM] FROM WINDOWS;'
GRANT BACKUP ANY DATABASE TO [NT AUTHORITY\SYSTEM]; "GRANT BACKUP ANY DATABASE TO [NT AUTHORITY\\SYSTEM];"
'@ )
$sqlGrant = [string]::Join("`r`n", $sqlLines)
$tmpGrant = Join-Path $Paths.SqlStage "grant_SYSTEM_server.sql" $tmpGrant = Join-Path $Paths.SqlStage "grant_SYSTEM_server.sql"
$sqlGrant | Out-File -LiteralPath $tmpGrant -Encoding ASCII -Force Set-Content -LiteralPath $tmpGrant -Value $sqlGrant -Encoding ASCII
$grantArgs = Build-SqlcmdArgs -WindowsAuth:$SqlUseWindowsAuth -User $SqlUser -Password $SqlPassword -Instance $SqlInstance -InputFile $tmpGrant $grantArgs = Build-SqlcmdArgs -WindowsAuth:$SqlUseWindowsAuth -User $SqlUser -Password $SqlPassword -Instance $SqlInstance -InputFile $tmpGrant
Log-SqlcmdArgsSafe -Args $grantArgs Log-SqlcmdArgsSafe -Args $grantArgs