Saturday, May 30, 2020

To run a script with full admin privileges On UAC-enabled systems using Powershell

On UAC-enabled systems, to make sure a script is running with full admin privileges, add this code at the beginning of your script

param([switch]$Elevated)

function Test-Admin {
  $currentUser = New-Object Security.Principal.WindowsPrincipal $([Security.Principal.WindowsIdentity]::GetCurrent())
  $currentUser.IsInRole([Security.Principal.WindowsBuiltinRole]::Administrator)
}

if ((Test-Admin) -eq $false)  {
    if ($elevated)
    {
        # tried to elevate, did not work, aborting
    }
    else {
        Start-Process powershell.exe -Verb RunAs -ArgumentList ('-noprofile -noexit -file "{0}" -elevated' -f ($myinvocation.MyCommand.Definition))
}

exit
}

'running with full privileges'


Source:https://superuser.com/questions/108207/how-to-run-a-powershell-script-as-administrator

No comments:

Post a Comment