Question Lister compte utilisateur sur plusieurs domaines

Plus d'informations
il y a 3 ans 2 mois - il y a 3 ans 2 mois #30357 par Chauveau
Bonjour a tous,

J'ai un Active Directory contenant plusieurs domaines
WE pour western europe
EE pour Eastern europe
NAZ pour nord america
........

Certain utilisateur ont plusieurs comptes.
Je voudrais creer un script pour lister les utilisateurs ayant des comptes dans plusieurs domaines et me retournant le resultat dans un ficher excel.

Toute aide est la bienvenue :)
Merci d'avance.
Dernière édition: il y a 3 ans 2 mois par Chauveau.

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

Plus d'informations
il y a 3 ans 2 mois #30358 par Arnaud Petitjean
Bien le bonjour ;-)

Est-ce que les utilisateurs ont le même nom de login sur ces différents domaines ? J'espère que oui sinon la correlation risque d'être difficile :-).

Ce que je ferais c'est lister tous les comptes et faire une sorte de jointure sur un champ commun.
# Lister les comptes du domaine
Get-ADUser -filter *

Ne pas oublier d'utiliser le paramètre -properties pour récupérer des propriétés spécifiques car par défaut on ne récupère qu'un sous-ensemble de propriétés.

MVP PowerShell et créateur de ce magnifique forum :-)
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?

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

Plus d'informations
il y a 3 ans 2 mois #30362 par Chauveau
Bonjour Arnaud,

Merci de ta reponse.

Oui les utilisateurs ont le meme UPN
Voici ce a quoi je pensais


Pour chaque domaine (we,ee,...) faire un recheche sur des OU cibles en creant un tableau

$OUList = @("OU=HR,DC=localJBL,DC=net",
"OU=Finance,DC=localJBL,DC=net",
"OU=Direction,DC=localJBL,DC=net",
"OU=Commercial,DC=localJBL,DC=net")

Puis faire une boucle pour recuperer les utilisateurs

$Users = Foreach($OU in $OUList){

Get-ADUser -Filter * -SearchBase $OU | Select-Object UserPrincipalName
}

$Users | Export-CSV -Path "C:\document\ec\Users.csv" -NoTypeInformation


Je ne suis pas sur si Get-ADUser -server peu etre utilise ici
Cela me conviendrai mieux pour deux raison
- un seul tableau genere avec la totalite des utilisateurs
- si je ne dis pas de betise la totalite de l'AD sera recherche, toutes les OU ainsi que les sub OU seront inspectes.

Avec ce tableau genere il devient facile de recherche des doublons.

Merci de ton aide ;)

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

Plus d'informations
il y a 3 ans 2 mois - il y a 3 ans 2 mois #30366 par Damien Commenge
Bonjour,

Si tu veux simplement avoir la liste des comptes identiques dans plusieurs domaine, tu peux utiliser ça je pense :
$Alldomains = (Get-ADForest).domains
$path = "c:\users.csv"

$users=@()
foreach ($domain in $Alldomains)
{
    $users+=get-aduser -Filter * -Server $domain | select SamAccountname,UserPrincipalName 
}

$users | Group-Object userprincipalname | select name,count | Export-Csv -Path $path -Encoding UTF8 -Delimiter ";" -NoTypeInformation
Dernière édition: il y a 3 ans 2 mois par Damien Commenge.

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

Plus d'informations
il y a 3 ans 2 mois #30382 par Chauveau
Bonjour Damien,

Merci de ton aide.
J'ai essaye ton code mes je n'ai rien dans le fichier de sorti

J'ai essaye le meme en changeant la derniere ligne

$users | Group-Object -Property userprincipalname | where-object -property count -gt 2 | Export-Csv -Path $path -Encoding UTF8 -Delimiter ";" -NoTypeInformation

Le resultat dans le fichier est le suivant
Values count Group name
System.collections.arrayList 55 System.Collections.ObjectModel.Collection'1[System.Management.Automation.PSObject]


Je ne comprends pas pourquoi je n'est pas la liste des UPNs dans le fichier :(

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

Plus d'informations
il y a 3 ans 2 mois - il y a 3 ans 2 mois #30389 par Damien Commenge
Bonjour,

Malheureusement je ne sais pas pourquoi ca ne fonctionne pas dans votre environnement comme ça...
Voici le retour que j'ai en image dans mon cas.
Quelle est la version de powershell qui est utilisée dans votre cas ? $psversiontable.psversion.Major

   
Pièces jointes :
Dernière édition: il y a 3 ans 2 mois par Damien Commenge.

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

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