logo rss

Restaurer les droits de fichiers Windows depuis une sauvegarde avec la commande Icacls

Microsoft Logo

Intro

J'ai récemment fait une boulette. J'ai, suite à une mauvaise manipulation, réinitialisé les droits sur un partage de fichiers…

Il est heureusement plutôt facile de les restaurer depuis une sauvegarde et avec la commande icacls.

J'ai personnellement restauré les ACLs depuis un snapshot vss (et avec l'outil dosdev disponible ici : http://www.ltr-data.se/) mais on peut également le faire depuis n'importe quel type de sauvegarde.

Si, comme moi, vous voulez utiliser un snapshot windows, il va falloir d'abord le monter comme un lecteur, sauvegarder les ACLs vers un fichier et le restaurer avec la commande icacls.

Diagramme illustrant le processus de sauvegarde et de restauration des autorisations ACL à l'aide d'ICACLS sur Windows Server.

Monter un snapshot vss

Nous allons voir ici comment monter un snapshot en tant que lecteur H:.

  • Ouvrir une console PowerShell avec les droits administrateur :
Menu du clic droit montrant l'option d'exécuter PowerShell en tant qu'administrateur sous Windows
  • Lister les snapshots pour le lecteur D: :
PS C:\> vssadmin list shadows /for=D:
  • Idenfier le snaphost que l'on souhaite monter :
Sortie de la commande vssadmin list shadows montrant les copies d'ombre pour le volume D : PS C:\> .\dosdev.exe H: \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy3 Utilisation de dosdev pour mapper une copie d'ombre sur la lettre H : pour l'accès dans Windows PowerShell

Restaurer les droits

  • Se déplacer dans H: et sauvegarder les ACLs pour chaque dossier avec la commande icacls :
PS C:\> H: PS H:\> cd .\Share\ PS H:\> icacls 01-Admin /save c:\BACKUPACL_01-Admin /T /C PS H:\> icacls 02-Softwares /save c:\BACKUPACL_01-Softwares /T /C PS H:\> icacls 03-Temp /save c:\BACKUPACL_03-Temp /T /C Sortie de la commande vssadmin list shadows montrant les copies d'ombre pour le volume D :
  • Restaurer les ACLs pour chaque dossier avec la commande icacls :
PS H:\> cd D:\Share PS D:\> icacls .\ /restore c:\BACKUPACL_01-Admin /T /C PS D:\> icacls .\ /restore c:\BACKUPACL_02-Admin /T /C PS D:\> icacls .\ /restore c:\BACKUPACL_03-Admin /T /C Utilisation de la commande icacls pour restaurer les autorisations ACL d'un fichier de sauvegarde vers les fichiers d'un répertoire dans Windows PowerShell
  • Une fois la restauration des droits terminée, nous pouvons démonter le lecteur H: :
PS D:\> .\dosdev.exe H: /D
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Contact :

adresse mail de contact