UAC User Account Control: configurazione

Cos'e UAC

User Account Control (UAC) e il meccanismo introdotto da Windows Vista per separare le operazioni utente da quelle che richiedono privilegi amministrativi. Quando un programma vuole modificare il sistema, UAC fa apparire la finestra blu che chiede conferma o le credenziali admin. E uno strato fondamentale contro malware e installazioni indesiderate.

Livelli UAC

Windows offre 4 livelli, accessibili da Pannello di controllo > Account utente > Modifica impostazioni di Controllo account utente:

  • Notifica sempre (massimo): chiede ogni volta che un'app o tu cambi impostazioni. Il desktop si oscura
  • Notifica quando le app cambiano (default): chiede solo per app, non per impostazioni utente. Desktop scuro
  • Notifica senza oscurare: come sopra ma niente Secure Desktop. Sconsigliato
  • Mai notificare (minimo): UAC praticamente disattivato. Pericoloso

Per l'ufficio, mantieni il livello 3 (default) o salirne a 4 per ruoli sensibili (CEO, contabilita).

Perché non abbassarlo

Anche se le notifiche sembrano fastidiose, UAC e una delle ultime difese contro:

  • Software gratuito che installa adware nascosti
  • Email con allegati eseguibili
  • Macro Office malevole che tentano scrittura in System32
  • Privilege escalation di malware

Disattivare UAC fa risparmiare 2 secondi al giorno e mette a rischio l'intera infrastruttura.

Come funziona tecnicamente

Quando accedi come amministratore, Windows ti fornisce due token: uno standard e uno admin. Operi sempre con quello standard. Quando serve, UAC chiede di promuovere il token admin per quella sessione. Questa logica chiamata "split token" rende inutile loggarsi sempre da admin: i privilegi vengono usati solo quando necessari.

Eseguire un'app come amministratore

  • Click destro sull'app o sullo shortcut > Esegui come amministratore
  • Da prompt: runas /user:Administrator cmd
  • Da Esplora file: Shift+Click destro > "Esegui come"

UAC per script PowerShell

Gli script PowerShell o batch non possono "auto-elevare". Per richiedere l'admin all'inizio dello script:

if (-NOT ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {
    Start-Process powershell -Verb runAs -ArgumentList "-File `"$PSCommandPath`""
    exit
}

Group Policy

Su domini AD puoi controllare UAC tramite GPO: Configurazione computer > Impostazioni di Windows > Impostazioni di sicurezza > Criteri locali > Opzioni di sicurezza. Le voci che iniziano con "Controllo account utente:" sono una decina e controllano comportamento dell'elevazione per utenti standard, admin, virtualizzazione registro.

Whitelist applicazioni

Non c'e modo nativo di disattivare UAC solo per un'app fidata. Soluzioni:

  • Task Scheduler con "Esegui con privilegi più elevati" + scorciatoia che chiama il task: l'utente lancia il task, niente prompt UAC
  • Strumenti come Microsoft Application Compatibility Toolkit per le poche app legacy

Hai bisogno di aiuto?

Se vuoi supporto Windows aziendale dal team di G Tech Group, scrivici tramite il modulo di contatto.

Hai trovato utile quest'articolo?