IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

lister les membres d'un groupe AD [PowerShell]


Sujet :

Scripts/Batch

  1. #1
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut lister les membres d'un groupe AD
    Passer directement au post 5

    Bonjour,

    je cherche à faire ce que dit le titre. Mais le script :
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     $groups = "eur.gad.schneider-electric.com"
    $members = Get-ADGroup -filter {name -eq $groups}  -Server "gad.schneider-electric.com"|Get-ADGroupmember
    Write-Host "members="$members
    affiche
    members=
    Qu'est qui ne va pas ?

  2. #2
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    j'ai un peu modifié mon script :
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $groups = "eur.gad.schneider-electric.com"
    $Group = Get-ADGroup -filter {name -eq $groups}  -Server "gad.schneider-electric.com"
    if ($Group) {
                    Get-ADGroupmember -Identity $Group  -Server "gad.schneider-electric.com"
                }
    else {Write-Host "not found" }
    La raison de la ligne 2 vient de ce script :
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     $Group = Get-ADGroup -filter {name -eq $ADGroup}  -Server "gad.schneider-electric.com" #génération d'une variable comprise pr la cmdlet Add-ADGroupMember
    if ($Group) {
                    Add-ADGroupMember -Identity $Group -Member $data -Server "gad.schneider-electric.com"
    }
    else
    {
                    Write-Host "Group Not Found $columnvalue : $ADGroup"
    }
    La ligne 4 de mon script vient de la ligne 3 du 2e script (qui, lui, marche !) mais mon nouveau script passe par la ligne 6 (not found). Donc râté Quelqu'un peut-il m'aider ?

  3. #3
    Membre chevronné
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2012
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 281
    Par défaut
    salut laurentSc

    mon nouveau script passe par la ligne 6 (not found).
    pour vérifier ce point, peut tu dire si quand tu execute la commande suivante, elle te renvoie bien les info du group :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Get-ADGroup "eur.gad.schneider-electric.com"
    La ligne 4 de mon script vient de la ligne 3 du 2e script (qui, lui, marche !)
    dans ton 2e script tu utilise $ADGroup et dans le premier $groups; peut etre une piste

  4. #4
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par 6ratgus Voir le message
    dans ton 2e script tu utilise $ADGroup et dans le premier $groups; peut etre une piste
    Merci de ta remarque car eur.gad.schneider-electric.com n'est tout simplement pas un groupe AD. Bloqué là-dessus pendant 1,5 jour

  5. #5
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    le nom du titre est encore bon donc je réactive cette discussion.

    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $domains = "eur.gad.schneider-electric.com","apa.gad.schneider-electric.com","nam.gad.schneider-electric.com","gmea.gad.schneider-electric.com"  
    foreach($domain in $domains){         
            Get-ADGroup  -filter {name -eq $groups}  -Server $domain -properties members
    }
    Voici mon code pour lister les membres du groupe AD. Le filtre sert à mettre en forme le nom du groupe pour qu'il soit compris par la cmdlet. Mon souci est que la réponse est vide. Que faut-il faire ?

  6. #6
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Bonsoir,

    submergé par les réponses j'ai essayé le cmdlet get-adgroupmember :
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    get-adgroupmember -identity $groups  -recursive | ft name,objectclass,distinguishedname
    J'ai pompé cette ligne dans http://powershell-scripting.com/inde...=15460&catid=5 mais
    get-adgroupmember : Impossible de trouver un objet avec l’identité «GAD-SU-NextGenPDM_NonPROD» sous: «
    etc
    Cela inspire-t-il quelqu'un ?

  7. #7
    Membre chevronné
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2012
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 281
    Par défaut
    Citation Envoyé par laurentSc Voir le message

    Impossible de trouver un objet avec l’identité ...
    Cela inspire-t-il quelqu'un ?
    je crois que tous est là !!

  8. #8
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Merci de me répondre, mais ce groupe existe bien et "manuellement" (si j'affiche ce groupe avec Utilisateurs et ordinateurs Active Directory), je peux bien afficher ses différents membres et je souhaiterais le faire en powershell ; mais comment le faire ?

  9. #9
    Membre chevronné
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2012
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 281
    Par défaut
    soit ce il y a une erreur de frappe sur le nom du groupe "GAD-SU-NextGenPDM_NonPROD" !!

    soit tu n'est pas connecter sur le même AD

    pour la syntaxe t'est bon
    donc si tu test ceci et que ça fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    get-adgroupmember "GAD-SU-NextGenPDM_NonPROD"
    ton script doit fonctionner

  10. #10
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Il n'y a pas de faute de frappe (pour en être sûr j'ai fait un copier-coller)

    Citation Envoyé par 6ratgus Voir le message
    soit tu n'est pas connecter sur le même AD
    Que veux-tu dire sachant que je peux visualiser ce groupe ?

  11. #11
    Membre chevronné
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2012
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 281
    Par défaut
    Citation Envoyé par laurentSc Voir le message
    Que veux-tu dire sachant que je peux visualiser ce groupe ?
    a tu plusieurs domaine (un domaine pour les tests) ou une forêt

    a tu fait le test : get-adgroupmember "GAD-SU-NextGenPDM_NonPROD" ?

  12. #12
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    j'étais quasiment sûr d'avoir répondu sauf que par erreur, en souhaitant modifier le post, j'ai du le supprimer

    donc peut-être pas une forêt mais un bosquet de 5 domaines (dont celui cité, pour les tests)

    et ton test, je l'avais bien fait :
    get-adgroupmember : Impossible de trouver un objet avec l’identité «GAD-SU-NextGenPDM_nonPROD» sous: «...

  13. #13
    Membre chevronné
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2012
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 281
    Par défaut
    j'étais quasiment sûr d'avoir répondu sauf que par erreur, en souhaitant modifier le post, j'ai du le supprimer
    pas de problème

    mais un bosquet de 5 domaines
    alors l'option "-Server Domaine" est obligatoire et le pc doit avoir l'approbation pour ce connecter a ce domaine

    retest en remplacent par le nom de domaine ou ce trouve le groupe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    get-adgroupmember "GAD-SU-NextGenPDM_NonPROD" -Server "eur.gad.schneider-electric.com"
    faut toujours faire des tests de base dans ce genre d'erreur
    ce test te sert a verifier que tu attaque bien le bon serveur contenant le groupe et que l'approbation fonctionne
    Ta syntaxe est bonne, c'est une erreur de nom de groupe ou de domaine !!

  14. #14
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Super , pas vu ta réponse tout de suite mais finalement j'obtiens bien la liste des members avec get-adgroupmember "GAD-SU-NextGenPDM_NonPROD" -Server "gad.schneider-electric.com". (J'ai essayé ce nom de domaine qui englobe les 4 domaines (pas 5 mais seulement 4)).
    Par contre, pour chaque membre, ça me donne la liste des propriétés (au nombre de 6), et je voudrais n'en afficher qu'une seule (le name) ; comment je fais ?

  15. #15
    Membre chevronné
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2012
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 281
    Par défaut
    bonne nouvelle !!
    pour chaque membre, ça me donne la liste des propriétés
    si tu PowerShell version 3 ou + essai ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (Get-ADGroupMember groupe domaine).name
    sinon faut faire comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Get-ADGroupMember groupe domaine | foreach {$_.name}

  16. #16
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    je suis en version 4 donc la première option convient. Apparemment, ces membres appartiennent aux 4 domaines vu que leur nom est affiché 4 fois. Comment ne l'afficher qu'une seule fois sans limiter la liste des domaines à un seul sachant qu'il existe peut-être des membres qui n'appartiennent pas à ce domaine ?

  17. #17
    Membre chevronné
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2012
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 281
    Par défaut
    déjà à la base tu ne devrais avoir qu'un seul utilisateur pour tous les domaines et des relation d'approbation entre les domaines

    mais bon puisque c'est déjà en place
    une des deux écritures devrait fonctionner !!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    (Get-ADGroupMember groupe domaine).name | select -Unique
    
    (Get-ADGroupMember groupe domaine | select -Unique).name
    il faut évidemment que les noms des utilisateurs sur les différents domaines soit strictement identique !!

  18. #18
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    (Get-ADGroupMember groupe domaine).name | select -Unique

    (Get-ADGroupMember groupe domaine | select -Unique).name
    La première solution fonctionnera peut être grâce à la permissivité du langage, mais la deuxième ça m'étonnerai encore plus sachant que ce sont des utilisateurs différents.

    Je tente ceci au hasard :
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    Get-ADGroupMember groupe domaine | Select-Object name -Unique

  19. #19
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Après avoir tester sur Get-Process ça à l'air de fonctionner, sans trop savoir pourquoi mes différents "svchost" sont considéré comme identique puisque ce ne sont pas les mêmes objets.

  20. #20
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Merci pour vos propositions. Cependant les 3 ont le même résultats (les 2 de 6ratgus et celle de ericlm128) : le name des membres est affiché 4 fois ; je crois que le traitement qui va marcher est de mémoriser chaque valeur et de ne l'afficher que si elle ne l'a pas déjà été...Je m'y colle...demain

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 12
    Dernier message: 16/03/2011, 14h07
  2. Lister les membres des groupes AD
    Par Firenight dans le forum VBScript
    Réponses: 1
    Dernier message: 10/06/2010, 11h11
  3. Vbs AD Lister les membres de groupe imbriqué
    Par vikingraver dans le forum VBScript
    Réponses: 2
    Dernier message: 16/11/2009, 15h54
  4. Lister les membres d'un groupe active directory
    Par Ludo75 dans le forum VBScript
    Réponses: 1
    Dernier message: 18/06/2008, 18h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo