- forum
- PowerShell
- Entraide pour les débutants
- Créer un script pour liste les groupes et (surtout) les groupes hérités
Question
Créer un script pour liste les groupes et (surtout) les groupes hérités
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6298
- Remerciements reçus 68
il y a 1 an 2 semaines #32625
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Créer un script pour liste les groupes et (surtout) les groupes hérités
>>donc je pense que je boucle dans le vide.
je dirais qu'à priori tu veux absolument avoir un résultat, tu ne tiens pas compte de ce que je t'ai dit :
>>Dans un premier temps simplifie ta démarche en retirant les opérations inutiles,
Regarde ce cmdlet .
je dirais qu'à priori tu veux absolument avoir un résultat, tu ne tiens pas compte de ce que je t'ai dit :
>>Dans un premier temps simplifie ta démarche en retirant les opérations inutiles,
Regarde ce cmdlet .
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- POYET
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 14
- Remerciements reçus 0
il y a 1 an 2 semaines #32627
par POYET
Réponse de POYET sur le sujet Créer un script pour liste les groupes et (surtout) les groupes hérités
Je n'ai pas précisé un élément mais l'usage du script est professionnel et doit permettre à n'importe quel utilisateur du script de pouvoir rentrer le nom du user souhaité d'ou la première partie qui peut sembler un peu lourde mais nécessaire afin de pouvoir nommer le user.
J'ai déjà vu le lien que tu m'as indiqué mais ça n'a pas donné ce qu'il fallait afin de pouvoir déterminer et peaufiner ma recherche sur les sous groupes.
J'ai déjà vu le lien que tu m'as indiqué mais ça n'a pas donné ce qu'il fallait afin de pouvoir déterminer et peaufiner ma recherche sur les sous groupes.
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6298
- Remerciements reçus 68
il y a 1 an 2 semaines #32628
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Créer un script pour liste les groupes et (surtout) les groupes hérités
Une fois le nom de cmdlet connu recherche sur le net.
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- POYET
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 14
- Remerciements reçus 0
il y a 1 an 2 semaines #32632
par POYET
Réponse de POYET sur le sujet Créer un script pour liste les groupes et (surtout) les groupes hérités
Bonjour,
J'ai un peu avancé dans mes démarches, voici mon script actuel:
< #Get all recursive groups a user belongs.
Function Get-ADUserNestedGroups
{
Param
(
[string]$DistinguishedName,
[array]$Groups = @()
)
#Get the AD object, and get group membership.
$ADObject = Get-ADObject -Filter "DistinguishedName -eq '$DistinguishedName'" -Properties memberOf, DistinguishedName;
#If object exists.
If($ADObject)
{
#Enummurate through each of the groups.
Foreach($GroupDistinguishedName in $ADObject.memberOf)
{
#Get member of groups from the enummerated group.
$CurrentGroup = Get-ADObject -Filter "DistinguishedName -eq '$GroupDistinguishedName'" -Properties memberOf, DistinguishedName;
#Check if the group is already in the array.
If(($Groups | Where-Object {$_.DistinguishedName -eq $GroupDistinguishedName}).Count -eq 0)
{
#Add group to array.
$Groups += $CurrentGroup;
#Get recursive groups.
$Groups = Get-ADUserNestedGroups -DistinguishedName $GroupDistinguishedName -Groups $Groups;
}
}
}
#Return groups.
Return $Groups;
}
#The user to check.
$User = "<SamAccountName/DN/UserPrincipal>";
#Get all groups.
$Groups = Get-ADUserNestedGroups -DistinguishedName (Get-ADUser -Identity $User).DistinguishedName;
#Output all groups.
$Groups | Select-Object Name | Sort-Object -Property Name; >
Maintenant je souhaiterais ressortir le résultat en un fichier texte et peux être simplifier mon script.
A savoir qu'actuellement le script met du temps à ressortir les résultats et je ne sais pas si je peux accélérer le processus.
J'ai un peu avancé dans mes démarches, voici mon script actuel:
< #Get all recursive groups a user belongs.
Function Get-ADUserNestedGroups
{
Param
(
[string]$DistinguishedName,
[array]$Groups = @()
)
#Get the AD object, and get group membership.
$ADObject = Get-ADObject -Filter "DistinguishedName -eq '$DistinguishedName'" -Properties memberOf, DistinguishedName;
#If object exists.
If($ADObject)
{
#Enummurate through each of the groups.
Foreach($GroupDistinguishedName in $ADObject.memberOf)
{
#Get member of groups from the enummerated group.
$CurrentGroup = Get-ADObject -Filter "DistinguishedName -eq '$GroupDistinguishedName'" -Properties memberOf, DistinguishedName;
#Check if the group is already in the array.
If(($Groups | Where-Object {$_.DistinguishedName -eq $GroupDistinguishedName}).Count -eq 0)
{
#Add group to array.
$Groups += $CurrentGroup;
#Get recursive groups.
$Groups = Get-ADUserNestedGroups -DistinguishedName $GroupDistinguishedName -Groups $Groups;
}
}
}
#Return groups.
Return $Groups;
}
#The user to check.
$User = "<SamAccountName/DN/UserPrincipal>";
#Get all groups.
$Groups = Get-ADUserNestedGroups -DistinguishedName (Get-ADUser -Identity $User).DistinguishedName;
#Output all groups.
$Groups | Select-Object Name | Sort-Object -Property Name; >
Maintenant je souhaiterais ressortir le résultat en un fichier texte et peux être simplifier mon script.
A savoir qu'actuellement le script met du temps à ressortir les résultats et je ne sais pas si je peux accélérer le processus.
Connexion ou Créer un compte pour participer à la conversation.
- forum
- PowerShell
- Entraide pour les débutants
- Créer un script pour liste les groupes et (surtout) les groupes hérités
Temps de génération de la page : 0.052 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Créer un script pour liste les groupes et (surtout) les groupes hérités