Bonjour, je viens ici pour vous demander de l'aide. Je me suis inspiré d'un code trouvé sur la toile qui me permet d'afficher la listes des utilisateurs qui ont accès à une arbo ainsi que leurs type de droits.
Voici mon code:
Le soucis que je rencontre est que le résultat affiché est bon mis à par que quand dans un groupe Active Directory j'ai un groupe il m'affiche ce groupe. Je m'explique voici un exemple de résultat.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 Import-Module ActiveDirectory $stream = new-object System.IO.StreamWriter("C:\droits-arbo.txt") $liste_repertoire = Get-childitem "B:\TEST" foreach ($repertoire in $liste_repertoire) { if($repertoire.Attributes -eq "Directory") { $global_acl = Get-Acl $repertoire.FullName $stream.WriteLine($repertoire.FullName) $stream.WriteLine("----------------------------------------------------------------------") $stream.WriteLine("----------------------------------------------------------------------") foreach ($droit in $global_acl.Access) { $chaine = "`t" $chaine += $droit.IdentityReference $chaine += " : " $chaine += $droit.FileSystemRights $stream.WriteLine($chaine) $stream.WriteLine("----------------------------------------------------------------------") $split = $chaine.split("\"" :") $member = get-adgroupmember $split[1] | select name foreach ($ecriture in $member) { $tab = "`t`t" $tab += $ecriture.name $stream.WriteLine($tab) } $stream.WriteLine("----------------------------------------------------------------------") } $stream.WriteLine("_________________________") } }
B:TEST
----------------------------------------------------------------------
----------------------------------------------------------------------
DOMAINDROIT-TEST : ReadAndExecute, Synchronize
----------------------------------------------------------------------
GROUPE-A
GROUPE-B
GROUPE-C
GROUPE-D
Bernard
Simon
Simone
Valérie
Dans ce cas j'aimerais afficher le contenu des groupes A, B, C et D à leur place dans le fichier résultat.
Dans le cas ou dans le groupe A il y a un autre groupe j'aimerai pouvoir l'afficher.
Je pense que dans un premier il faut déterminer si $tab est un groupe dans l'Active Directory.
Pouvez-vous m'aider s'il vous plait ?
Merci de m'avoir lu jusqu'ici.
Cordialement,
Kypso.
PS: Si vous avez des questions hésitez pas.
Partager