Come configurare UAC (User Account Control) con Microsoft Intune
Introduzione
UAC (User Account Control) è una di quelle funzionalità che tendiamo a dare per scontate e che spesso vengono ridotte al semplice popup di conferma di Windows. In realtà il suo ruolo è molto più importante, perché serve a separare l’uso ordinario del sistema dalle operazioni che richiedono privilegi elevati, riducendo il rischio che modifiche non autorizzate, installazioni improvvisate o codice malevolo vengano eseguiti subito con diritti amministrativi. Anche quando un utente appartiene al gruppo degli amministratori locali, Windows non opera costantemente con un token elevato: l’elevazione entra in gioco solo quando è realmente necessaria.
In un tenant gestito correttamente, quindi, il punto non è limitarsi ad avere UAC attivo, ma decidere come deve comportarsi sui client aziendali. Ed è qui che Microsoft Intune diventa particolarmente utile; infatti, queste impostazioni sono disponibili in modo nativo nel Settings Catalog, senza dover ricorrere a script, workaround o modifiche manuali al registro. L’approccio corretto è trattarle come una normale policy di configurazione, assegnarle ai gruppi giusti e verificarne l’applicazione con gli strumenti più adatti.
In questo articolo vedremo dunque che cos’è UAC, come configurarlo tramite Microsoft Intune e quale esperienza produce lato utente, sia nel caso di un utente standard sia nel caso di un utente amministratore.
Cosa è l’UAC
UAC, acronimo di User Account Control, è una funzionalità di sicurezza di Windows progettata per proteggere il sistema da modifiche non autorizzate. Quando un’azione richiede privilegi amministrativi, Windows interrompe il normale flusso operativo e mostra una richiesta di consenso oppure di credenziali, in base alla configurazione impostata. In pratica, UAC rappresenta uno strato di controllo tra l’utente e l’elevazione dei privilegi.
Questo meccanismo assume particolare importanza in due scenari. Il primo riguarda l’utente standard, che non dovrebbe poter elevare liberamente i propri privilegi. Il secondo riguarda l’amministratore locale, che comunque non dovrebbe operare costantemente in un contesto pienamente elevato. Il ruolo di UAC è proprio questo: ridurre l’esposizione del sistema e rendere esplicito il passaggio da attività ordinarie ad attività amministrative.
Un altro aspetto importante è il secure desktop. Quando questa opzione è abilitata, le richieste di elevazione non vengono mostrate sul desktop interattivo dell’utente, ma in un contesto protetto. Dal punto di vista operativo, questo riduce la possibilità di interferenze da parte di altri processi e rende più isolato e più controllato il momento in cui viene richiesta l’elevazione dei privilegi.

Edizioni Windows supportate e requisiti di licenza
Dal punto di vista delle edizioni supportate, User Account Control (UAC) è disponibile su:
- Windows Pro
- Windows Enterprise
- Windows Pro Education/SE
- Windows Education
Per quanto riguarda invece i diritti di utilizzo, la funzionalità rientra nelle licenze:
- Windows Pro
- Pro Education e SE
- Windows Enterprise E3
- Windows Enterprise E5
- Windows Education A3
- Windows Education A5
Potete trovare la tabella completa alla pagina Microsoft User Account Control – Windows edition and licensing requirements.
Come creare la policy via Intune
Passiamo ora dalla teoria alla pratica e vediamo, passo dopo passo, come creare la policy UAC in Microsoft Intune. Per iniziare, apriamo il Microsoft Intune admin center, andiamo in Devices e creiamo una nuova policy per Windows 10 and later, scegliendo Settings Catalog come tipo di profilo.

Nella sezione Basics assegniamo un nome alla policy, ad esempio “UAC Settings”, inseriamo una descrizione se la riteniamo utile e poi clicchiamo su Next.

Nella sezione Configuration settings clicchiamo su Add settings e utilizziamo il Settings picker per cercare le impostazioni relative a UAC che vogliamo distribuire. Per la lista completa delle impostazioni, potete fare riferimento alla pagina Microsoft User Account Control settings list. Nel nostro caso, a scopo dimostrativo, configuriamo le seguenti policy:
Impostazione | Cosa controlla | Valore | Note |
|---|---|---|---|
User Account Control Use Admin Approval Mode | Controlla il comportamento di Admin Approval Mode per l’account Administrator built-in | Enabled | Se abilitata, anche l’account Administrator built-in passa in Admin Approval Mode; se disabilitata, quell’account esegue tutto con privilegi amministrativi pieni |
User Account Control Switch To The Secure Desktop When Prompting For Elevation | Decide se il prompt UAC viene mostrato sul desktop interattivo oppure sul secure desktop | Enabled | Con questo valore, tutte le richieste di elevazione vengono mostrate sul secure desktop |
User Account Control Run All Administrators In Admin Approval Mode | Governa il comportamento complessivo delle policy UAC sul computer | Enabled | Se disattivata, Admin Approval Mode e le policy UAC correlate vengono disattivate (la modifica richiede riavvio) |
User Account Control Only Elevate UI Access Applications That Are Installed In Secure Locations | Limita l’elevazione delle applicazioni UIAccess ai percorsi sicuri del file system | Enabled: Application runs with UIAccess integrity only if it resides in secure location | Consente UIAccess solo se l’app è in una posizione considerata sicura |
User Account Control Detect Application Installations And Prompt For Elevation | Controlla il rilevamento dei pacchetti di installazione che richiedono elevazione | Enabled | Se un installer richiede privilegi elevati, l’utente viene portato al prompt di elevazione |
User Account Control Behavior of the Elevation Prompt for Standard Users | Definisce il comportamento del prompt UAC per gli utenti standard | Prompt for credentials | Le opzioni supportate qui sono: Automatically deny elevation requests, Prompt for credentials on the secure desktop, Prompt for credentials |
User Account Control Behavior of the Elevation Prompt for Administrators | Definisce il comportamento del prompt UAC per gli amministratori | Prompt for credentials on the secure desktop | La documentazione UAC per il prompt amministratori riporta anche le altre opzioni classiche, incluso Prompt for consent e Prompt for consent for non-Windows binaries |
Nella barra di ricerca del Settings picker digitiamo e cerchiamo Local policies security options, successivamente selezioniamo le impostazioni desiderate. Dopo la selezione, sulla sinistra assicuriamoci che tutte le voci siano sul toggle Enabled, mentre per le impostazioni User Account Control Behavior of the Elevation Prompt for Standard Users e User Account Control Behavior of the Elevation Prompt for Administrators che abbiano rispettivamente i valori Prompt for credentials e Prompt for credentials on the secure desktop. Terminata la configurazione, fare click su Next.

Per l’utente standard il comportamento cambia molto in base a come imposti la policy. Se scegli Automatically deny elevation requests, ogni tentativo di eseguire qualcosa che richiede privilegi amministrativi viene bloccato subito. È la scelta più chiusa e in molti ambienti riduce anche ticket inutili, perché evita all’utente di trovarsi davanti a prompt che comunque non dovrebbe soddisfare. Se invece scegli Prompt for credentials on the secure desktop, l’utente può proseguire solo inserendo credenziali amministrative valide.
Per l’amministratore locale il discorso è diverso. Prompt for consent on the secure desktop è di solito il punto di equilibrio migliore: il sistema chiede una conferma esplicita e l’elevazione non passa in silenzio, ma senza costringere a digitare credenziali ogni volta. Prompt for credentials on the secure desktop alza ulteriormente la soglia di controllo, ma rende ogni elevazione più pesante. Elevate without prompting, invece, è una modalità da usare solo in scenari estremamente vincolati, perché di fatto svuota il senso del controllo di elevazione.
Nella sezione Scope tags (opzionale) possiamo lasciare il valore Default oppure selezionare uno scope tag già presente nel nostro ambiente Intune. Nel nostro caso lasciamo quello predefinito e proseguiamo cliccando su Next.

A questo punto, nella sezione Assignments, assegniamo la policy al gruppo desiderato, così da mantenere un controllo più preciso sulla distribuzione. Per assegnare la policy a un gruppo specifico, clicchiamo su Add groups, cerchiamo il gruppo desiderato, selezioniamolo tramite la relativa checkbox e infine clicchiamo su Select.

Nella stessa sezione Assignments verifichiamo che il gruppo selezionato sia stato aggiunto correttamente all’elenco Included groups. Se necessario, possiamo ancora aggiungere altri gruppi o applicare eventuali filtri; altrimenti proseguiamo cliccando nuovamente su Next.

Nella sezione Review + create controlliamo che tutti i dettagli della policy siano corretti, compresi i gruppi di assegnazione. Se non ci sono modifiche da apportare, clicchiamo su Create.

Dopo pochi istanti la policy sarà disponibile in Intune e pronta per la distribuzione secondo le assegnazioni configurate.

Troubleshooting
Passiamo adesso al troubleshooting. Il primo errore da evitare è partire dal client aprendo log a caso; infatti, su una policy UAC distribuita tramite Settings Catalog, la prima verifica va fatta nel profilo Intune:
- stato del deployment
- eventuali conflitti
- stato per singola impostazione
Monitoring in Microsoft Intune
Il Settings Catalog genera un normale device configuration profile, quindi il primo livello di verifica va fatto sulla policy stessa e sul suo stato di distribuzione, non sull’Intune Management Extension. Per controllare rapidamente se il profilo è stato applicato correttamente, apriamo il Microsoft Intune admin center e andiamo in Devices > Configuration, selezioniamo la policy interessata e facciamo clic su View report. Da qui possiamo verificare lo stato di applicazione, eventuali errori, conflitti e il dettaglio per singolo dispositivo.

A questo punto accediamo alla vista di monitoraggio della policy, da cui possiamo verificare lo stato dei dispositivi e degli utenti a cui è stata assegnata la configurazione UAC. Nel report troviamo il dettaglio del check-in, l’ultimo aggiornamento ricevuto dal dispositivo e gli eventuali stati di errore o conflitto, informazioni utili per capire subito se il profilo è stato applicato correttamente oppure se richiede un’analisi più approfondita.

Infine, selezionando il dispositivo di interesse dal report, possiamo approfondire il dettaglio della distribuzione e verificare l’esito delle impostazioni applicate da quella specifica policy. Questo passaggio è utile per capire rapidamente se il profilo UAC risulta distribuito correttamente sul singolo endpoint oppure se sono presenti errori, conflitti o stati pending che richiedono ulteriori verifiche.

Monitoring sul device
Vediamo adesso cosa succede sul nostro dispositivo pilota. In questo scenario, il riferimento più utile è il report MDM, perché raccoglie uno snapshot delle configurazioni e delle policy ricevute dal device ed è quindi molto più centrato, per una policy distribuita tramite Settings Catalog, rispetto a log pensati per altri workload. Per generarlo, apriamo le Impostazioni di Windows (ad esempio con Win + I) e andiamo in Account > Accesso all’azienda o all’istituto di istruzione.

Nella pagina che si apre, dalla sezione Impostazioni correlate facciamo clic su Esporta per generare il report diagnostico. Come indicato nella schermata, i file verranno salvati nel percorso C:\Users\Public\Documents\MDMDiagnostics, cartella utile per analizzare lo stato delle configurazioni MDM ricevute dal dispositivo.

Recandoci nel percorso C:\Users\Public\Documents\MDMDiagnostics, troviamo i file del report diagnostico MDM appena generato.

Aprendo il report, possiamo cercare il riferimento LocalPoliciesSecurityOptions per verificare che il dispositivo abbia ricevuto correttamente la configurazione UAC distribuita tramite Intune. Volendo scendere più nel dettaglio, possiamo cercare anche le singole impostazioni UserAccountControl_ per controllare quali valori sono stati recepiti dal sistema.

Event viewer
Un’ulteriore verifica può essere fatta dall’Event Viewer, che resta uno dei riferimenti più utili per analizzare il comportamento del client lato MDM. Il percorso da aprire è Registri applicazioni e servizi > Microsoft > Windows > DeviceManagement-Enterprise-Diagnostic-Provider > Admin. All’interno di questo log possiamo individuare errori, warning ed eventi informativi utili a confermare la corretta ricezione della policy oppure a intercettare eventuali anomalie nella sua applicazione sul dispositivo.

Registro di sistema
Un controllo rapido e molto utile resta il registro di sistema di Windows, in particolare il percorso HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System. È qui che possiamo verificare valori come EnableLUA, PromptOnSecureDesktop, ConsentPromptBehaviorUser e ConsentPromptBehaviorAdmin, cioè le chiavi che permettono di capire se il comportamento UAC atteso è stato effettivamente recepito dal sistema. Se abbiamo modificato l’impostazione che governa l’Admin Approval Mode complessivo, è bene ricordare anche che, in questo caso, è necessario il riavvio del dispositivo, quindi una verifica fatta prima del reboot rischia di portare a conclusioni errate.

In aggiunta, è possibile controllare anche il ramo PolicyManager, utile per verificare la configurazione ricevuta dal motore MDM. Il percorso di riferimento è HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\Providers\<GUID>\default\Device\LocalPoliciesSecurityOptions, dove <GUID> identifica il provider locale associato alla policy. Questo controllo è utile soprattutto per confermare che la configurazione sia stata scritta correttamente lato MDM; il ramo Policies\System resta invece il riferimento più immediato per verificare il comportamento effettivo applicato a UAC sul dispositivo. Il Policy CSP espone infatti nodi distinti di Config e Result, e nei controlli lato registry Microsoft usa il ramo […]PolicyManager\Providers\<GUID>\default\Device[…] come riferimento per verificare che una policy del catalogo impostazioni sia stata recepita dal client.

Esperienza utente
Vediamo ora cosa succede dal punto di vista dell’utente. Se un utente standard prova a eseguire un’operazione che richiede privilegi amministrativi, Windows mostra il prompt UAC chiedendo l’inserimento delle credenziali di un amministratore. Questo comportamento è in linea con l’impostazione User Account Control Behavior of the Elevation Prompt for Standard Users = Prompt for credentials: l’azione non viene negata automaticamente, ma può proseguire solo dopo l’inserimento di un account con privilegi adeguati.

In alcuni componenti di Windows, i criteri UAC non impediscono completamente l’accesso all’interfaccia, ma limitano le operazioni che richiedono privilegi elevati. In pratica, un utente standard può aprire alcune console o visualizzare determinate impostazioni, ma quando prova ad apportare modifiche il sistema richiede privilegi amministrativi oppure blocca l’operazione. Questo comportamento è perfettamente in linea con il modello UAC, che separa le attività di consultazione da quelle che comportano modifiche al sistema.
Un esempio pratico è Gestione computer (compmgmt.msc): l’utente può aprire la console, ma quando tenta di accedere a Gestione dispositivi per eseguire operazioni amministrative, Windows mostra un messaggio che segnala che è consentito l’accesso in sola visualizzazione, mentre per apportare modifiche è necessario connettersi come amministratore. Nel caso mostrato in Figura 21, il sistema evidenzia proprio questa distinzione tra consultazione e modifica.

Un altro esempio simile è Gestione disco. Anche qui l’utente può aprire la console Gestione computer, ma quando tenta di accedere a Gestione disco il sistema restituisce un messaggio che indica chiaramente l’assenza dei diritti necessari. In altre parole, la consultazione della console può essere consentita, ma l’accesso ai componenti amministrativi resta riservato a un account con privilegi adeguati.

Esperienza admin
Passiamo ora all’esperienza dell’amministratore. In questo scenario, avendo configurato User Account Control Behavior of the Elevation Prompt for Administrators su Prompt for credentials on the secure desktop, anche l’utente amministratore non ottiene l’elevazione in modo automatico. Infatti, se si tentasse di eseguire un’operazione che richiede privilegi elevati, Windows mostra il prompt UAC sul secure desktop e richiede l’inserimento delle credenziali amministrative. Solo dopo l’inserimento di credenziali valide l’operazione può proseguire con il livello di privilegio necessario.
Nel nostro caso, quindi, l’esperienza è volutamente più restrittiva rispetto al classico prompt di consenso. Per esempio, aprendo un Prompt dei comandi con l’account Administrator locale, il sistema non mostra soltanto una richiesta di conferma, ma apre direttamente la finestra UAC con la richiesta di nome utente e password, esattamente come mostrato nella Figura 23. Questo comportamento è in linea con il valore configurato nella policy e con l’uso del secure desktop per proteggere il processo di elevazione.

Un altro esempio è rappresentato dalla console MMC di Windows. Anche in questo scenario, il tentativo di eseguire l’operazione con privilegi elevati attiva il prompt UAC, che richiede l’inserimento delle credenziali di un amministratore prima di consentire l’esecuzione della console.

Conclusioni
Dal punto di vista tecnico, configurare UAC con Microsoft Intune è un’operazione piuttosto semplice. Il vero valore, però, non sta nella creazione della policy, ma nelle scelte che la guidano: quanto vuoi essere restrittivo, quale esperienza vuoi lasciare a utenti standard e amministratori e come vuoi bilanciare sicurezza e operatività. L’approccio più solido resta quello più semplice: creare una policy tramite Settings Catalog, usare solo le impostazioni necessarie, validarla su un gruppo pilota e verificare il comportamento del dispositivo. In questo modo UAC non viene trattato come un’impostazione secondaria di Windows, ma come un controllo che, se configurato correttamente, continua ad avere un ruolo molto forte nella protezione e nella governance dei client.
Vale anche la pena ricordare che, nei dispositivi in cui sono presenti account amministrativi locali, la configurazione di UAC dovrebbe essere accompagnata da una gestione corretta delle credenziali locali. In questo senso, Windows LAPS rappresenta un complemento naturale, perché consente di mettere sotto controllo rotazione, protezione e consultazione delle password amministrative locali. Se volete approfondire l’argomento, trovate le due guide alle pagine Endpoint Ninja Manage Local User Group Membership via Microsoft Intune e How to set up Windows LAPS in Microsoft Intune.