SetACL

Introduction :

SetACL est un petit bijou , il remplace SUBINACL, CACLS.EXE, XCACLS.EXE et XCACLS.VBS.

C'est à dire, qu'il travail sur les ACL des objets M$ :

Tant au niveau de la sécurité qu'au niveau des audits.

Tout ce qui peut être fait à la souris peut être fait avec cet outils. Bien sur, un outil en ligne de commande qui sait faire tout ça n'est pas simple à prendreen mains, mais une fois qu'on le connaît un peu, il est finalement assez simple.

Pourquoi choisir SetACL plutôt que les outils M$ ?

Le pour : un seul outil au lieu de 2 (subinal et XCALCLS) une doc existe, il a bonne réputation
Le contre : par certain de suivre les évolutions de Windows.

J'aborderai ici quelques exemples d'utilisation de cet outil. Pour approfondir, il faut aller sur le site de l'auteur (http://setacl.sourceforge.net/)

Préambule :

Dans SetACL, on défini le nom de l'objet sur lequel on agi puis, le type d'objet ensuite l'action à réaliser enfin l'action proprement dite. Il peut y avoir différents paramètres concernant la récursivité, le mode silencieux ou autres.

Exemple : SetACL -on C:\TEST -ot file -actn ace -ace "n:%USERDOMAIN%\administrateurs;p:full"

Le nom de l'objet est : C:\TEST, de type file (fichier ou dossier) le type d'action est ACE (modification des ACE) et l'action est ici contrôle total pour le groupe administrateurs

Les Fichiers

Comme on vient de le voir, le début de l'action est simple.

-on nom du fichier ou du dossier le chemin peut être direct ou UNC

-ot file que ce soit pour des fichiers ou des dossiers

- actn ace

Reste le plus gros : -ace de la forme :"n:Trustee;p:Permission;s:Issid;i:Inheritance;m:Mode;w:Where"

En fait, une série de paramètre (n, p, s, i, m, w) avec leur aguments.

deux points (:) séparent un paramètre de son argument et un point virgule ; sépare deux paramètres.

n donne le nom sur lequel va agir l'ACE (utilisateurs, administrateurs) sous la forme : [ordinateur|domaine]\nom

ordinateur : nom netbios de l'ordinateur

domaine : nom netbios ou DNS du domaine

p définit les permissions suivant les valeurs suivantes; Il peut y avoir plusieurs valeurs séparées par des virgules.

i définit la portée (optionnel) par défaut les sécurités sont propagées sur tous les sous dossiers et fichiers.

Il y a quatre valeurs np (No propagation), sc (sub contenair), so (sub object), io (iherit only) qui combinées donnent les portées suivantes :

Ce dossier seulement

Np

Ce dossier, les sous dossiers et les fichiers

so + sc

Ce dossier et les sous dossiers

Sc

Ce dossier et les fichiers

So

Les sous dossiers et les fichiers

Sc + so + io

Les sous dossiers seulement

Sc + io

Fichiers seulement

so + io

m définit le mode de fonctionnement.

Donc, pour donner le droit à nicolas_t du domaine voillaume de créer des dossiers dans le dossier C:\test du serveur srv-etk-2003 on écrira :

SetAcl -on \\srv-etk-2003\c$\test -ot file -actn ace -ace "n:%USERDOMAIN%\nicolas_t;p:add_subdir;i:np;m:grant"

OUF !