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 :

Dépasser les 5000 members avec Get-ADGroupMember [PowerShell]


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    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 497
    Billets dans le blog
    1
    Par défaut Dépasser les 5000 members avec Get-ADGroupMember
    Bonjour

    passer au post #2 (je garde le 1 pour l'historique)

    j'utilise l'instruction Get-ADUser pour explorer l'AD. Si en test, ça fonctionne bien, quand on passe en prod, on tombe sur une limite de 5000 membres (y en a 6 ou 7000). Comment peut-on bypasser cette limite ?

    Mon code est de type :
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        foreach($domain in $domains)
        {
            $member =Get-ADUser -filter "((EmployeeID -like '$columnvalue') -OR (name -like '$columnvalue'))  " -Server $domain -Properties * #le properties * est important
     
            if($member)
            {
             ...

  2. #2
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    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 497
    Billets dans le blog
    1
    Par défaut
    Bonsoir, j'ai modifié le titre de la discussion car mon problème porte plus précisément sur une limitation de la cmdlet Get-ADGroupMember.
    Et la ligne de code qui coince est :
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Get-ADGroupMember -Identity $Group -server gad.schneider-electric.com -recursive |%{
    	$group=$_
    get-aduser $_ -Properties Name,GivenName,SurName,Employeeid,Mail,Enabled | Select Name,GivenName,SurName,Employeeid,Mail,Enabled
    } | Export-csv -path $OutputFile

    Quelqu'un a-t-il une piste pour exécuter ça sur des groupes de plus de 5000 membres ? (je ne parviens pas à utiliser les pages trouvées sur internet données par https://www.google.fr/search?source=hp&ei=3mQPWtDSHpLOsAeG1qDQBQ&q=get+ad+group+member+size+limit+exceeded&oq=get+ad+group+member+size+limit+exceeded&gs_l=psy-ab.3..0i10i19k1.8245.8245.0.10564.1.1.0.0.0.0.189.189.0j1.1.0....0...1.1.64.psy-ab..0.1.187....0.OLltW8qcs (google : get ad group member size limit exceeded)

  3. #3
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    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 497
    Billets dans le blog
    1
    Par défaut
    Voici un essai infructueux en essayant d'exploiter https://stackoverflow.com/questions/...t-was-exceeded :
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $Group = ((Get-ADGroup -Filter {name -eq $param} -Server "gad.schneider-electric.com").sAMAccountName)
    ...
    Get-ADGroup $Group -Properties Member |
        Select-Object -Expand Member |
        Get-ADUser -Property Name, DisplayName  | Export-csv -path $OutputFile

    message d'erreur :
    Get-ADGroup : Impossible de trouver un objet avec l’identité «GAD-SU-NextGenPDM_DEV» sous: etc
    Avez-vous une idée ?

  4. #4
    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 Laurent

    comment va tu ?

    pour ton soucis c'est une limite Microsoft pour toute requête LDAP dans l'AD !!

    tu doit pour la dépassé faire des modifs dans l'ad, mais de mémoire, tu n'a pas les droits pour ces modification dans l'AD

    tu doit donc rusé
    il me semble que l'on en a déjà parlé cette été
    tu peut par exemple faire une requêté pour avoir la moitié des groupes par exemple
    il faut regarder les nom des groupes pour trouvé un filtre qui fonctionne


    pour ton erreur tu la déjà eu dans de précèdent message
    toujours le même problème de filtre ou/et de nom de serveur a interroger !!

  5. #5
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    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 497
    Billets dans le blog
    1
    Par défaut
    Bonjour 6ratgus (Philippe je crois me souvenir ?)

    si je vais bien : les pieds dans la neige (ce qui ne doit pas être ton cas !). Sauf que le rhume m'a empêché d'en profiter...

    J'attendais avec impatience (vilain défaut crois-je aussi me souvenir) une réponse.
    Tu te souviens que j'ai pas les droits de modifier l'AD: exact. Donc OK pour la ruse.

    Un filtre qui irait bien serait de pouvoir trier les membres s'ils sont rattachés ou non au serveur "nam" (il doit y en avoir plusieurs milliers) sauf que je sais pas si cet info est présente dans un paramètre...ni dans ce cas comment faire un filtre qui dirait filter {nom_param contient "nam"}

  6. #6
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    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 497
    Billets dans le blog
    1
    Par défaut
    OK pour filtrer mais sur quel paramètre et comment ?

    Mon code à l'heure actuelle est :
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Get-ADGroupMember -Identity $Group -server gad.schneider-electric.com -recursive |%{
    	$group=$_
    get-aduser $_ -Properties Name,GivenName,SurName,Employeeid,Mail,Enabled | Select Name,GivenName,SurName,Employeeid,Mail,Enabled
    } | Export-csv -path $OutputFile

    J'ai tenté de mettre un filtre sur get-aduser (la cmdlet qui accepte un filtre), mais
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Get-ADGroupMember -Identity $Group -server gad.schneider-electric.com -recursive |%{
    	$group=$_
    get-aduser $_ -filter{name -like "SESA1*"} -Properties Name,GivenName,SurName,Employeeid,Mail,Enabled | Select Name,GivenName,SurName,Employeeid,Mail,Enabled
    } | Export-csv -path $OutputFile
    donne
    Get-ADUser : A positional parameter cannot be found that accepts argument
    'CN=SESAetc30182,OU=Users,OU=TN-Smyrna-USSMY00001,OU=Sites,OU=US,OU=Countries,DC=nam,DC=gad,DC=schneider-electric,DC=com'.
    At
    Donc c'est pas bon...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. un outil en ligne pour faire des graphiques avec les données fournies en GET ?
    Par clavier12AZQSWX dans le forum Général Conception Web
    Réponses: 7
    Dernier message: 26/05/2014, 09h42
  2. Réponses: 0
    Dernier message: 04/07/2012, 15h47
  3. Récupérer les données par ordre alphabétique avec GET
    Par thebarbarius dans le forum Langage
    Réponses: 4
    Dernier message: 04/03/2010, 14h42
  4. Modifier et récuperer les données avec get et set
    Par rimbaut dans le forum Langage
    Réponses: 2
    Dernier message: 14/02/2010, 16h45
  5. Réponses: 4
    Dernier message: 16/02/2003, 12h16

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