Bonjour,
j'ai un petit souci d'index et de récursivité
je part de cela, mon besoin est d'obtenir un index unique et de pouvoir ressortir celui du groupe parent...
voici mon petit script :
mon but en gros est de récupérer tous les groupes dont un utilisateurs est membre,
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 Set-Variable -Name Index -Value 0 -Scope Global function Get-GroupMembership { [CmdletBinding()] Param ( [Parameter (Mandatory=$true)] [string]$User, [int]$Index, [int]$Nested = 0 ) $Nested++ foreach( $temp in (Get-ADPrincipalGroupMembership ($User) -ErrorAction SilentlyContinue)) { $Index++ # $index++ # $temp.Name+" => Dossier parent = $user | "+" index = $index" #parent [int]$n=1 while ($n -lt $Nested) { $space+="`t" $n++ } Write-Host $space $temp.Name+" | index = $index" #parent # $index++ Get-GroupMembership -User $temp.SamAccountName -Nested $Nested -Index $Index $space="" } }
j'ai besoin pour chacun de ces groupes : de lui attribuer un index unique, d'identifier son nom et l'index de son groupe parent.
en gros :
pour un utilisateur User1 : membre de "service informatique" et "test"
service informatique membre de siege lui meme membre de all
user1
|
+- service informatique
| |
| L siege
| |
| L All
|
L- test
j'ai besoin d'avoir un resultat du type :
- $user=User1 / $index=0
- $user = Service info / $Index=1 / $Parent=0
- $user = Siege / $Index=2 / $Parent=1
- $user = All / $Index=3 / $Parent=2
- $user = test / $Index=4 / $Parent=1
-------------------------------------------------------
à l'heure actuelle la sortie ressemble à ça
- $user=User1 / $index=0
- $user = Service info / $Index=1 / $Parent=0
- $user = Siege / $Index=2 / $Parent=1
- $user = All / $Index=3 / $Parent=2
- $user = test / $Index=1 / $Parent=0
J’espère que c'est assez clair...
merci d'avance.
Partager