Cacls
Aller à la navigation
Aller à la recherche
| Fiche express | |
|---|---|
| Domaine | Droits NTFS en ligne de commande (legacy) |
| Commande | cacls — remplacé par icacls
|
| Contexte | Équivalent Windows de chmod/ACL côté Linux |
| Voir aussi | ACL (équivalent Linux) |
cacls gère les droits NTFS d'un fichier ou répertoire en ligne de commande. Cet outil
est déprécié depuis Windows Vista/2008 au profit d'icacls, plus complet et plus
fiable sur les héritages de droits — cacls reste documenté ici car encore présent sur de
nombreux systèmes legacy et largement référencé dans des scripts existants.
Lister les droits
cacls c:\test
Accorder des droits
cacls c:\test /E /G benoit:F
cacls c:\test /E /G WORKGROUP\magalie:F
cacls test /E /T /G benoit:C
/E— édite la liste de contrôle d'accès existante au lieu de la remplacer entièrement (à toujours utiliser, sous peine d'écraser les droits déjà en place)/T— applique récursivement aux sous-répertoires/G utilisateur:droit— accorde un droit (F= contrôle total,C= modification,R= lecture seule,W= écriture)
Réduire ou retirer des droits
cacls c:\test /E /P benoit:C
cacls c:\test /E /R benoit
cacls c:\test /E /D benoit
/P— remplace les droits existants de l'utilisateur par les nouveaux (au lieu de les cumuler)/R— retire l'utilisateur de la liste de contrôle d'accès/D— refuse explicitement l'accès à l'utilisateur (différent de `/R` : un refus explicite prime toujours sur une autorisation)
Alternative moderne : icacls
icacls c:\test /grant benoit:(F)
icacls c:\test /grant:r benoit:(M) /T
icacls c:\test /remove benoit
icacls gère correctement l'héritage des droits (ce que `cacls` fait mal) et
permet de sauvegarder/restaurer un jeu de droits complet (icacls /save /
icacls /restore) — à privilégier pour tout nouveau script.
Voir aussi
- ACL — équivalent Linux (getfacl/setfacl)