Question Listing droits arborescence.

Plus d'informations
il y a 10 ans 4 mois #21013 par BASTIEN
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:

[code:1]
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(\"_________________________\")
}
}


[/code:1]


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.


B:\TEST


DOMAIN\\DROIT-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.

Message édité par: Kypso, à: 6/11/15 12:17

Message édité par: Kypso, à: 6/11/15 13:46<br><br>Message édité par: Kypso, à: 6/11/15 13:48

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 10 ans 4 mois #21055 par Philippe
Réponse de Philippe sur le sujet Re:Listing droits arborescence.
salut Kypso

si j'ai bien compris ta demande
si tu remplace cette ligne :
[code:1]$member = get-adgroupmember $split[1] | select name[/code:1]
par cette là :
[code:1]$member = get-adgroupmember $split[1] -Recursive | select name[/code:1]
tu aura ce que tu cherche ! :)

un petit détail :
n'oublie pas de fermé le fichier à la fin de ton script !
[code:1]$stream.Close()
[/code:1]

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.037 secondes
Propulsé par Kunena