Determinare se si è in elevati privilegi con PowerShell
Un esempio PowerShell per determinare se lo script sta girando con privilegi elevati (run with elevated privileges):
PowerShell
# verifica run whit elevate privilege
$currentPrincipal = New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent())
$isElevate = $currentPrincipal.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)
If($isElevate) {
Write-Host "Lo script sta girando con elevati privilegi" -ForeGround Green
} else {
Write-Host "Attenzione lo script richiede elevati privilegi" -ForeGround Red
}
Lo scriptPowerShell può essere eseguito tramite un file bat in cui viene impostato il flag per fare in modo che facendo doppio click venga sempre eseguito in elevati privilegiFlag run with elevate privilege
Windows chiederà sempre conferma prima di eseguire il file in elevati privilegi.