eZGroup – v1.1
Problématique
Comment créer en masse dans un domaine Active Directory des groupes de sécurité gérant les accès Lecture/Ecriture, du type Domain Local et Global Group en respectant les préconsisations AGDLP, afin de les appliquer sur mes ressources (partages, fichiers, …)
AGDLP
Citation extraite du site laboratoire-microsoft
Pour une bonne gestion des autorisations sur des objets Active Directory, il faut utiliser à bon escient les groupes. Ceci dans le but de dissocier et de prévenir tous problèmes futures, il faut acquérir l’habitude suivante: un objet ou entité d’objet dans un domaine doit posséder un groupe local pour attribuer les autorisations sur cet objet ou entité.
Par exemple: je possède une imprimante qui se nomme ‘printercouloir’ et je veux associer un nombre d’utilisateur restreint et spécifique à cette imprimante. Il faut alors créer un groupe ‘dl_printercouloir’ (groupe de sécurité avec une étendue locale). Ajouter les membres à celle-ci et attribuer les autorisations pour l’imprimante au nouveau groupe ainsi créé.
Appliquer cette stratégie peut être fastidieux au début mais le gain en maintenance sera conséquent. Par exemple, un an plus tard, une nouvelle imprimante ‘printercouloir2’ est ajoutée et vous souhaitez que seuls les utilisateurs qui avaient déjà accès à l’imprimante ‘printercouloir’ y aient accès. Très simplement, vous n’aurez à donner que des autorisations au groupe ‘dl_printercouloir’. Si vous aviez donné des autorisations nominativement auparavant, il aurait fallu reprendre chaque membre un par un et donnez des autorisations à chacun.
Ci-dessus a été explicité une partie de la stratégie A G DL P (Account, Global group, Domain Local group, Permission) et A G U DL P (Account, Global group, Universal group, Domain Local group, Permission).
Ce type de stratégie est très efficace seulement dans un domaine restreint (pas de notion de forêt).
Solution
Pour ce besoin j’ai développé l’outil eZGroup.exe utilisable en ligne de commande.
Celui-ci est à copier sur un de vos contrôleur de domaine et à exécuter depuis l’invite de commande avec un compte administrateur du domaine.
Utilisation
eZGroup exige au minimum 2 arguments:
– le nom du groupe
– l’OU de destination au format LDAP bien connu OU=xxx,DC=yyy,DC=zzz
Ceci aura pour effet de créer 2 groupes du type Domain Local nommés DL_nomgroupesaisi_R et DL_nomgroupesaisi_W ainsi que 2 groupes du type Global Group nommés GG_nomgroupesaisi_R et GG_nomgroupesaisi_W dans l’OU spécifiée, puis d’imbriquer les GG dans les DL respectifs, vous laissant plus que le soin de les appliquer sur vos ressources.
Si les paramètres saisis sont erronés l’aide suivante vous sera indiquée:
eZGroup v1.1 – Developped by Y. BOUVIER – Groupe FOLDER – http://www.groupe-folder.fr
Usage:
eZGroup.exe [/DC:specific_domaine_controller] [/IN:file_name] [/LOG:log_file] [/DL:DomainLocal_prefix] [/GG:GlobalGroup_prefix] [/GR:GroupRead_suffix] [/GW:GroupWrite_suffix] group_name organizational_unit_path
Default values are:
/DL=DL_
/GG=GG_
/GR=_R
/GW=_W
Mises à jour
Version 1.0: intègre également l’option /i permettant l’importation d’un fichier texte au lieu de spécifier un nom de groupe pour la création en masse.
Dans ce cas de figure, le fichier sera lu ligne par ligne, chacune des lignes représentant le nom d’un groupe à créer en suivant la règle des DL/GG expliquée ci-dessus.
Les options /DC et /L viendront compléter les besoins de l’outil par la suite (en attendant le /L, utiliser une redirection de la sortie std > D:nomfichier.txt).
Version 1.1: l’option d’import en masse depuis un fichier a été modifiée de /i en /IN. Ajout de paramètres de commande supplémentaires afin de pouvoir définir vos propre préfixes/suffixes lors de la création des groupes.
Pré-requis
Cet outil requiert le Framework 3.5!
Téléchargement
eZGroup v1.1
Avant tout utilisation en production d’un quelconque outil à disposition sur ce site, je vous invite à le tester sur un environnement de test. Je ne pourrai être tenu résponsable de toute perte de données ou autre suite à l’utilisation de ces outils.