Question
Afficher la liste des users AD en table
- philou
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 4
- Remerciements reçus 0
il y a 17 ans 1 mois #3878
par philou
Afficher la liste des users AD en table a été créé par philou
Bonjour,
Actuellement en formation informatique en entreprise, je lance des recherches sur Active Directory
je me sert du script (tiré de la bibliothèque) :
[code:1]
$ldapQuery = \"(&(objectCategory=user))\"
$de = new-object system.directoryservices.directoryentry
$ads = new-object system.directoryservices.directorysearcher -argumentlist $de,$ldapQuery
$complist = $ads.findall()
$complist
[/code:1]
Il fonctionne parfaitement bravo !
Je recherche à afficher toutes les proprietes d'un utilisateur, dans un fichier.
Merci a tous de votre aide, en fait je debute et je n'ai jamais fait de programmation
Message édité par: speedsend, à: 2/02/09 15:32<br><br>Message édité par: Arnaud, à: 4/02/09 00:04
Actuellement en formation informatique en entreprise, je lance des recherches sur Active Directory
je me sert du script (tiré de la bibliothèque) :
[code:1]
$ldapQuery = \"(&(objectCategory=user))\"
$de = new-object system.directoryservices.directoryentry
$ads = new-object system.directoryservices.directorysearcher -argumentlist $de,$ldapQuery
$complist = $ads.findall()
$complist
[/code:1]
Il fonctionne parfaitement bravo !
Je recherche à afficher toutes les proprietes d'un utilisateur, dans un fichier.
Merci a tous de votre aide, en fait je debute et je n'ai jamais fait de programmation
Message édité par: speedsend, à: 2/02/09 15:32<br><br>Message édité par: Arnaud, à: 4/02/09 00:04
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 17 ans 1 mois #3882
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:ldap
Salut,
speedsend écrit:
je recherche : ton script est fait
a afficher toutes les propriétes d'un utilisateur : Format-List *
dans un fichier : Out-File \"NomDeFichier\"
je te donne le début, tu as juste à compléter :
[code:1]$complist |...[/code:1]

ps:
Si peux aussi utiliser Select-Objet pour sélectionner un ensemble de propriétés.
speedsend écrit:
Il faut, si je puis dire,traduire ton besoin en cmdlet.je recherche a afficher toutes les proprietes d'un utilisateur, dans un fichier
je recherche : ton script est fait
a afficher toutes les propriétes d'un utilisateur : Format-List *
dans un fichier : Out-File \"NomDeFichier\"
je te donne le début, tu as juste à compléter :
[code:1]$complist |...[/code:1]
ps:
Si peux aussi utiliser Select-Objet pour sélectionner un ensemble de propriétés.
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Jacques Barathon
- Hors Ligne
- Administrateur
-
Réduire
Plus d'informations
- Messages : 576
- Remerciements reçus 0
il y a 17 ans 1 mois #3891
par Jacques Barathon
Réponse de Jacques Barathon sur le sujet Re:ldap
Bonne démarche. Le petit souci avec la solution suggérée, c'est que le résultat de format-list dans un fichier n'est pas très exploitable en dehors d'une lecture directe, vite fatigante si on a plus de trois ou quatre objets et/ou plus d'une dizaine de propriétés.
On pourrait lui préférer format-table, mais là le problème c'est que si on a un grand nombre de propriétés, on va devoir ruser pour que format-table les affiche toutes.
En fait, en général on préfère exporter dans un fichier au format CSV. C'est correctement lisible, et surtout c'est réexploitable (notamment dans Excel ou dans d'autres scripts PowerShell).
[code:1]
$complist | export-csv $fichier -notypeinformation
[/code:1]
Tape \"help export-csv -full\" pour plus d'infos sur cette commande.
Janel<br><br>Message édité par: janel, à: 2/02/09 23:36
On pourrait lui préférer format-table, mais là le problème c'est que si on a un grand nombre de propriétés, on va devoir ruser pour que format-table les affiche toutes.
En fait, en général on préfère exporter dans un fichier au format CSV. C'est correctement lisible, et surtout c'est réexploitable (notamment dans Excel ou dans d'autres scripts PowerShell).
[code:1]
$complist | export-csv $fichier -notypeinformation
[/code:1]
Tape \"help export-csv -full\" pour plus d'infos sur cette commande.
Janel<br><br>Message édité par: janel, à: 2/02/09 23:36
Connexion ou Créer un compte pour participer à la conversation.
- philou
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 4
- Remerciements reçus 0
il y a 17 ans 1 mois #3894
par philou
merci a tous les 2
avec $complist |export-csv liste.csv -notypeinformation
efectivement j'ai bien une liste.
mais ce n'est pas ce que je veux, je me suis mal exprime, desole.
en fait je veux recuperer toutes les infos sur les utilisateurs afficher sous formes de tableau
cn, dc adresse mail etc...
pouvoir effectuer des recherches par nom , adresse
avec $complist |export-csv liste.csv -notypeinformation
efectivement j'ai bien une liste.
mais ce n'est pas ce que je veux, je me suis mal exprime, desole.
en fait je veux recuperer toutes les infos sur les utilisateurs afficher sous formes de tableau
cn, dc adresse mail etc...
pouvoir effectuer des recherches par nom , adresse
Connexion ou Créer un compte pour participer à la conversation.
- Jacques Barathon
- Hors Ligne
- Administrateur
-
Réduire
Plus d'informations
- Messages : 576
- Remerciements reçus 0
il y a 17 ans 1 mois #3905
par Jacques Barathon
Réponse de Jacques Barathon sur le sujet Re:ldap
Sous forme de tableau, mais quel format pour ton tableau? Tu veux faire une recherche par quel biais: recherche purement visuelle, ou recherche dans PowerShell, ou dans un autre outil?
Avec le fichier exporté au format CSV tu peux faire une recherche facilement en réimportant ton document avec la commandelette import-csv. Tu peux également importer le document dans Excel, pour éventuellement l'enrichir de fonctionnalités propres à Excel (formules, macros, tableaux dynamiques croisés, etc).
Essaye de préciser ce que tu veux faire au final, ça nous aidera à t'aider.
Janel
Avec le fichier exporté au format CSV tu peux faire une recherche facilement en réimportant ton document avec la commandelette import-csv. Tu peux également importer le document dans Excel, pour éventuellement l'enrichir de fonctionnalités propres à Excel (formules, macros, tableaux dynamiques croisés, etc).
Essaye de préciser ce que tu veux faire au final, ça nous aidera à t'aider.
Janel
Connexion ou Créer un compte pour participer à la conversation.
- philou
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 4
- Remerciements reçus 0
il y a 17 ans 1 mois #3927
par philou
desole pour les explications pas tres claires
mon objectif est de trouver toutes proprietes d'un utilisateur ad :
exemple :
accountexpires
admincount
cn
displayname
..etc
pour cela j'ai utiliser le code suivant (trouve sur internet):
[code:1]
$Searcher = new-object system.DirectoryServices.DirectorySearcher
$Searcher | get-member
$Searcher.Filter = (\"(objectCategory=user)\"«»)
$Users = $Searcher.Findall()
$users |get-member
$Users[0].GetDirectoryEntry() | get-member -membertype property[/code:1]
ca fonctionne, mais je ne trouve pas toute les infos,
par rapport a l'explication. moi j'en ai 25 et selon la personne lui en trouve 48
en fait en relisant sa liste j'ai trouve mon info \"proxyaddresses\"
j'utilise le code suivant pour effectuer ma recherche
[code:1]
$Searcher = new-object System.DirectoryServices.DirectorySearcher
$Searcher.Filter = (\"(objectCategory=user)\"«»)
$Users = $Searcher.Findall()
$nom = read-host \"entrez critere\"
foreach ($User in $Users)
{
$User.GetDirectoryEntry().proxyaddresses | where {$_ -match \"smtp\" } |where {$_ -like $nom }[/code:1]
je filtre sur les adresse smtp, puis j'affine ma recherche avec un like, je trouve mon bonheur
\"smtp : recherche@domaine\"
malheureusement je n'ai pas le nom de l'utilisateur, si je rajoute \"$User.GetDirectoryEntry().cn $User.GetDirectoryEntry().proxyaddresses \" il effectue son trie sur le cn et la proxyaddresses.
comment effectuer une recherche sur une propriete precise puis afficher les infos du comptes.
comment obtenir toutes les proprietes d'un compte ad
encore merci de m'avoir repondu.<br><br>Message édité par: Arnaud, à: 4/02/09 18:07
mon objectif est de trouver toutes proprietes d'un utilisateur ad :
exemple :
accountexpires
admincount
cn
displayname
..etc
pour cela j'ai utiliser le code suivant (trouve sur internet):
[code:1]
$Searcher = new-object system.DirectoryServices.DirectorySearcher
$Searcher | get-member
$Searcher.Filter = (\"(objectCategory=user)\"«»)
$Users = $Searcher.Findall()
$users |get-member
$Users[0].GetDirectoryEntry() | get-member -membertype property[/code:1]
ca fonctionne, mais je ne trouve pas toute les infos,
par rapport a l'explication. moi j'en ai 25 et selon la personne lui en trouve 48
en fait en relisant sa liste j'ai trouve mon info \"proxyaddresses\"
j'utilise le code suivant pour effectuer ma recherche
[code:1]
$Searcher = new-object System.DirectoryServices.DirectorySearcher
$Searcher.Filter = (\"(objectCategory=user)\"«»)
$Users = $Searcher.Findall()
$nom = read-host \"entrez critere\"
foreach ($User in $Users)
{
$User.GetDirectoryEntry().proxyaddresses | where {$_ -match \"smtp\" } |where {$_ -like $nom }[/code:1]
je filtre sur les adresse smtp, puis j'affine ma recherche avec un like, je trouve mon bonheur
\"smtp : recherche@domaine\"
malheureusement je n'ai pas le nom de l'utilisateur, si je rajoute \"$User.GetDirectoryEntry().cn $User.GetDirectoryEntry().proxyaddresses \" il effectue son trie sur le cn et la proxyaddresses.
comment effectuer une recherche sur une propriete precise puis afficher les infos du comptes.
comment obtenir toutes les proprietes d'un compte ad
encore merci de m'avoir repondu.<br><br>Message édité par: Arnaud, à: 4/02/09 18:07
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.101 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Afficher la liste des users AD en table