La possibilità di poter reimpostare le autorizzazioni dell'utente in ambiente Windows può rivelarsi preziosa per risolvere problemi relativi all’accesso ad applicazioni o a documenti. Ad esempio, nel caso in cui si verifichino problemi con il profilo utente, potremmo non riuscire più ad accedere a particolari file o ad avviare alcune applicazioni in quanto non siamo autorizzati. Oppure potremmo dover accedere a un file proveniente da un vecchio backup o da un altro computer e che quindi è stato creato con un utente diverso; anche in questo caso, potrebbe non essere possibile accedere al file senza prima reimpostare le autorizzazioni utente di default. Windows offre diverse modalità per eseguire questa operazione. In questo articolo verrà mostrato come farlo tramite gli strumenti icacls e secedit.
ICACLS
Icacls è il sostituto di cacls (Change Access Control Lists), un'utilità a riga di comando che consente di mostrare ed eseguire alcune operazioni sulle ACL di file o directory.
L'ACL (Access Control List) è un elenco di permessi per un oggetto del filesystem e definisce il modo in cui la sua sicurezza viene controllata gestendo chi e come può accedervi.
Le operazioni sulle ACL non sono le uniche possibili con questo strumento. Ciò che rende icacls uno strumento potente è anche la possibilità di eseguire operazioni di backup e ripristino su ACL per file o directory, o di cercare i file che hanno un utente specifico come proprietario. Inoltre, nel caso in cui una ACL venga danneggiata o distrutta, con icacls è possibile ripristinarla resettandola e impostando i permessi predefiniti o ereditando quelli del genitore.
Icacls è un comando nativo di Windows a partire da Windows Vista.
Supponiamo di avere una pendrive contenente una cartella Backup a cui non riusciamo ad accedere per la mancanza di autorizzazioni.
Provando ad accedere alla cartella verrà visualizzato il messaggio di FIG 1
FIG 1
|
FIG 1 - Non si dispone della autorizzazioni necessarie |
In questi casi possiamo provare ad eseguire il reset delle autorizzazioni tramite icacls:
- Avviare un prompt dei comandi come amministratore.
- Posizionarsi sulla pendrive, quindi digitare il seguente comando per il ripristino delle autorizzazioni
icacls * /t /q /c /reset
il carattere jolly (*) include tutte le sottocartelle della directory corrente;
/t estende la modifica alle sottocartelle e ai file all’interno della cartella corrente;
/q esegue il comando senza visualizzare messaggi di conferma;
/c consente di continuare l’operazione anche in caso di errori;
/reset, infine, ripristina i valori predefiniti delle opzioni di autorizzazione.
|
FIG 2 - Accesso negato |
- Se, come in questo caso, il comando dovesse restituire il messaggio di Accesso negato è necessario acquisire prima la proprietà delle cartelle interessate attraverso il comando takeown. Eseguire il comando
takeown /R /F *
quindi digitare S seguito da Invio per confermare la sostituzione delle autorizzazioni. Il parametro /R esegue un'operazione ricorsiva su tutti i file nella directory e nelle sottodirectory specificate, mentre /F permette di specificare il nome file o nome della directory (il carattere jolly permette di includere tutti i file e le sottocartelle della directory corrente).
Secedit
Secedit (Security Configuration Editor) è un’utilità di sistema integrata in Windows che consente di configurare e analizzare la sicurezza del sistema, dei file e delle cartelle. Con secedit è possibile applicare e modificare set di regole di sicurezza definite tramite appositi modelli: file in formato .inf o .sdb. I file .inf sono file testuali editabili con un comune editor di testo, mentre i file .sdb sono veri e propri database.
Generalmente il comando viene utilizzato dagli amministratori di sistema per automatizzare la gestione delle politiche di sicurezza del sistema operativo o per ripristinare le impostazioni predefinite di Windows. Il comando va utilizzato con attenzione e può essere utile nei casi in cui il sistema operativo Microsoft non risponde più come dovrebbe per via dei permessi non assegnati in modo corretto. Ad esempio, sui sistemi windows che non permettono l'accesso alle cartelle (comprese quelle di sistema) e/o sui sistemi che sembrano sprovvisti di account amministrativi in grado di compiere operazioni con privilegi elevati.
Per riportare le impostazioni predefinite di tutte le autorizzazioni utente tramite il comando Secedit:
- Avviare un prompt dei comandi come amministratore.
- Eseguire il comando
secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose
per procedere alla riconfigurazione automatica utilizzando le direttive contenute nel file di configurazione defltbase.inf e creando poi il database di sicurezza defltbase.sdb per archiviare le impostazioni. - Al termine, bisognerà riavviare il computer e le autorizzazioni utente verranno ripristinate alle impostazioni di sistema predefinite.