Expliquez la sortie de ICACLS.EXE, ligne par ligne, élément par élément

16

Qu'est-ce que ça veut dire:

C:\foo\> icacls .
. NT AUTHORITY\IUSR:(M)
  BUILTIN\IIS_IUSRS:(M)
  BUILTIN\IIS_IUSRS:(OI)(CI)(M)
  NT AUTHORITY\IUSR:(OI)(CI)(M)
  BUILTIN\IIS_IUSRS:(I)(OI)(CI)(RX)
  NT AUTHORITY\IUSR:(I)(OI)(CI)(RX)
  NT AUTHORITY\SYSTEM:(I)(OI)(CI)(F)
  BUILTIN\Administrators:(I)(OI)(CI)(F)

Je pense que le premier signifie que l'ID utilisateur obtient les autorisations de modification sur le répertoire - ce qui signifie que l'utilisateur peut créer des fichiers, ou mettre à jour des fichiers, ou supprimer des fichiers. Droite? Qu'est-ce que l'utilisateur "NT AUTHORITY \ IUSR"? S'agit-il vraiment d'un seul ID utilisateur? S'agit-il de l'ID utilisateur IIS par défaut?

ok, la deuxième ligne, je pense, fait référence à un groupe. Il obtient les mêmes autorisations.

Qu'en est-il de toutes ces lignes avec (I) et (OI) et ainsi de suite. S'il vous plaît, expliquez.

Cheeso
la source

Réponses:

24

Extrait de l' article de Microsoft sur ICACLS

Les entrées sont des utilisateurs et des groupes spécifiques à ce fichier (DOMAINE \ UTILISATEUR ou GROUPE), les autorisations répertoriées sont les suivantes:

Les SID peuvent être sous forme de nom numérique ou convivial. Si vous utilisez une forme numérique, apposez le caractère générique * au début du SID.

icacls préserve l'ordre canonique des entrées ACE comme suit :

  • Déni explicites
  • Subventions explicites
  • Déni hérités
  • Subventions héritées

Perm est un masque d'autorisation qui peut être spécifié sous l'une des formes suivantes:

  1. Une séquence de droits simples:
    • F (accès complet)
    • M (modifier l'accès)
    • RX (accès en lecture et en exécution)
    • R (accès en lecture seule)
    • W (accès en écriture seule)
  2. Une liste séparée par des virgules entre parenthèses de droits spécifiques:
    • D (supprimer)
    • RC (contrôle de lecture)
    • WDAC (écrire DAC)
    • WO (écrire propriétaire)
    • S (synchroniser)
    • AS (sécurité du système d'accès)
    • MA (maximum autorisé)
    • GR (lecture générique)
    • GW (écriture générique)
    • GE (exécution générique)
    • GA (générique tout)
    • RD (lire les données / répertoire de liste)
    • WD (écrire des données / ajouter un fichier)
    • AD (ajouter des données / ajouter un sous-répertoire)
    • REA (lire les attributs étendus)
    • WEA (écrire des attributs étendus)
    • X (exécuter / parcourir)
    • DC (supprimer l'enfant)
    • RA (lire les attributs)
    • WA (écrire des attributs)

Les droits de succession peuvent précéder l'un ou l'autre des formulaires Perm et ils ne s'appliquent qu'aux répertoires:

  • (OI) : objet hérité
  • (CI) : conteneur hérite
  • (IO) : hériter uniquement
  • (NP) : ne pas propager hériter
  • (I) : autorisation héritée du conteneur parent

Pour les fichiers, les masques d'autorisation sont plus ou moins explicites: cela Rsignifie que vous pouvez lire le fichier, Xpermettre son exécution (en tant que programme), etc.

Pour les autres types d'objets, vous devrez parcourir MSDN:

Droits de succession en anglais:

  • (I) "Hérité": cet ACE a été hérité du conteneur parent.
  • (OI) "Objet hérité": cet ACE sera hérité par les objets placés dans ce conteneur.
  • (CI) "Container inherit": cet ACE sera hérité par les sous-conteneurs placés dans ce conteneur.
  • (IO)"Hériter uniquement": cet ACE sera hérité (voir OIet CI), mais ne s'applique pas à cet objet lui-même.
  • (NP)"Ne pas propager": cet ACE sera hérité par les objets et les sous-conteneurs d' un niveau de profondeur - il ne s'appliquera pas aux choses à l'intérieur des sous-conteneurs.

Pour le système de fichiers, "conteneur" signifie un dossier et "objet" signifie un fichier, mais n'oubliez pas que les ACL peuvent être définies sur de nombreux autres types d'objets, qui n'ont pas tous un concept de "conteneurs".

MaQleod
la source
1
Merci. Je maîtrise Google et je peux lire. Mais je voudrais une explication en anglais de ce que signifie avoir (I) RX. "container inherit" - expliquez ce que cela signifie et soyez spécifique à l'exemple que j'ai fourni.
Cheeso
Dans ce cas, vous aurez besoin d'un cours intensif sur les autorisations NTFS.
surfasb
1
Si vous maîtrisez Google, vous pouvez utiliser les "autorisations ntfs", "ACL" et "autorisation de fichier et de registre". Franchement, expliquer chaque ligne en termes simples signifie essentiellement réécrire tout un article Technet pour vous.
surfasb
3
Un an plus tard ... Oui. Merci beaucoup. Quant aux autres qui disent: "Allez le lire", c'est à ça que sert le superutilisateur, non? Pour répondre à des questions auxquelles on ne répond pas clairement ailleurs.
Cheeso
1
J'ai trouvé en fait (I)mentionné dans icacls /?Windows 7. Il avait également deux droits "Supprimer" distincts - (D)était auparavant présenté dans la première liste, avec à la (DE)place dans la deuxième liste. Voir ss64.com/nt/icacls.html . Il semble que les choses aient légèrement changé depuis lors.
mwfearnley