Question
Lister les users AD avec date de dernier login
- faure-brac
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 1
- Remerciements reçus 0
il y a 12 ans 1 mois #11248
par faure-brac
Lister les users AD avec date de dernier login a été créé par faure-brac
Bonjour,
je découvre powershell et une chose évidente me saute aux yeux, ça a vraiment l'air d'être super puissant! j'ai regardé une vidéo technet présentant ce produit et je suis resté bouche bée devant sa simplicité et sa gestion multi-plateforme.
J'ai une question pour vous.
Je souhaite lister tous les utilisateurs de mon domaine AD avec la date de leur dernier login (une manière pour faire le tri et pouvoir supprimer les accès obsolètes.
J'ai pu voir dans la bibilothèque de scripts quelque chose permettant de lister les users, mais la date apparait en millisecondes depuis janvier 1601.
Il y a bien aussi un tuto sur la conversion de cette donnée, mais comment compiler les deux afin d'obtenir un tableau avec juste le nom de l'utilisateur et sa date (format date) de dernier login.
j'ai testé, mais je n'arrive pas à obtenir un résultat probant.
Merci pour votre aide.
Patrice
Message édité par: patou, à: 28/02/12 13:53<br><br>Message édité par: patou, à: 28/02/12 13:54
je découvre powershell et une chose évidente me saute aux yeux, ça a vraiment l'air d'être super puissant! j'ai regardé une vidéo technet présentant ce produit et je suis resté bouche bée devant sa simplicité et sa gestion multi-plateforme.
J'ai une question pour vous.
Je souhaite lister tous les utilisateurs de mon domaine AD avec la date de leur dernier login (une manière pour faire le tri et pouvoir supprimer les accès obsolètes.
J'ai pu voir dans la bibilothèque de scripts quelque chose permettant de lister les users, mais la date apparait en millisecondes depuis janvier 1601.
Il y a bien aussi un tuto sur la conversion de cette donnée, mais comment compiler les deux afin d'obtenir un tableau avec juste le nom de l'utilisateur et sa date (format date) de dernier login.
j'ai testé, mais je n'arrive pas à obtenir un résultat probant.
Merci pour votre aide.
Patrice
Message édité par: patou, à: 28/02/12 13:53<br><br>Message édité par: patou, à: 28/02/12 13:54
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
Réduire
Plus d'informations
- Messages : 1778
- Remerciements reçus 21
il y a 12 ans 4 semaines #11250
par Philippe
Réponse de Philippe sur le sujet Re:Lister les users AD avec date de dernier login
salut patou
Tu trouvera la solution dans le livre du menu de gauche \"Windows PowerShell\", chapitre etude de cas. si tu ne la pas encore :
[code:1]
# Get-userAccounts.ps1 – v1.0
[datetime]$date = '01/01/1601'
$adsPath = 'LDAP://OU=Utilisateurs,' + ([ADSI]'').distinguishedName
$objDomaine = [ADSI]$adsPath
$objRecherche =
New-Object System.DirectoryServices.DirectorySearcher($objDomaine)
$requete = '(&(objectCategory=person)(objectClass=user))'
$objRecherche.Filter=$requete
$comptes = $objRecherche.FindAll()
$comptes |
select-object @{e={$_.properties.cn};n='Nom commun'},
@{e={$_.properties.whencreated};n='Date de création'},
@{e={$_.properties.homedrive};n='HD'},
@{e={$_.properties.homedirectory};n='HomeDirectory'},
@{e={$date.AddTicks($($_.properties.lastlogontimestamp))};
n='Dernière connexion'}
[/code:1]
perso j'utilise ce script repris du livre
[code:1]
[datetime]$date = '01/01/1601'
$requete = '(&(objectCategory=person)(objectClass=user))'
$de = new-object system.directoryservices.directoryentry
$objRecherche = new-object system.directoryservices.directorysearcher -argumentlist $de
$objRecherche.Filter=$requete
$comptes = $objRecherche.FindAll()
$comptes |
select-object @{e={$_.properties.cn};n='Nom commun'},
@{e={$_.properties.whencreated};n='Date de création'},
@{e={$date.AddTicks($($_.properties.lastlogontimestamp))};
n='Dernière connexion'} | Format-Table
[/code:1]
car le precedant me donne une erreur dans findall (probleme d'OU, j'ai plusieurs OU utilisateurs)
pour info les date en 1601 sont les utilisateurs qui ne se sont jamais connecter
je te conseil d'acheter le livre pour d'aider au debut, de plus tu aura les modifs pour une utilisation plus simple sous windows 2008 R2
Tu trouvera la solution dans le livre du menu de gauche \"Windows PowerShell\", chapitre etude de cas. si tu ne la pas encore :
[code:1]
# Get-userAccounts.ps1 – v1.0
[datetime]$date = '01/01/1601'
$adsPath = 'LDAP://OU=Utilisateurs,' + ([ADSI]'').distinguishedName
$objDomaine = [ADSI]$adsPath
$objRecherche =
New-Object System.DirectoryServices.DirectorySearcher($objDomaine)
$requete = '(&(objectCategory=person)(objectClass=user))'
$objRecherche.Filter=$requete
$comptes = $objRecherche.FindAll()
$comptes |
select-object @{e={$_.properties.cn};n='Nom commun'},
@{e={$_.properties.whencreated};n='Date de création'},
@{e={$_.properties.homedrive};n='HD'},
@{e={$_.properties.homedirectory};n='HomeDirectory'},
@{e={$date.AddTicks($($_.properties.lastlogontimestamp))};
n='Dernière connexion'}
[/code:1]
perso j'utilise ce script repris du livre
[code:1]
[datetime]$date = '01/01/1601'
$requete = '(&(objectCategory=person)(objectClass=user))'
$de = new-object system.directoryservices.directoryentry
$objRecherche = new-object system.directoryservices.directorysearcher -argumentlist $de
$objRecherche.Filter=$requete
$comptes = $objRecherche.FindAll()
$comptes |
select-object @{e={$_.properties.cn};n='Nom commun'},
@{e={$_.properties.whencreated};n='Date de création'},
@{e={$date.AddTicks($($_.properties.lastlogontimestamp))};
n='Dernière connexion'} | Format-Table
[/code:1]
car le precedant me donne une erreur dans findall (probleme d'OU, j'ai plusieurs OU utilisateurs)
pour info les date en 1601 sont les utilisateurs qui ne se sont jamais connecter
je te conseil d'acheter le livre pour d'aider au debut, de plus tu aura les modifs pour une utilisation plus simple sous windows 2008 R2
Connexion ou Créer un compte pour participer à la conversation.
- COTTIN
- Hors Ligne
- Membre premium
Réduire
Plus d'informations
- Messages : 84
- Remerciements reçus 0
il y a 11 ans 5 mois #12821
par COTTIN
Réponse de COTTIN sur le sujet Re:Lister les users AD avec date de dernier login
je remet se sujet comme j'ai une petite question.
Le script parfais il ma aider, mais j'ai 3 Domaines a gérer et j'aimerais jongler avec les 3 domaines mais avec le même script.
Le script parfais il ma aider, mais j'ai 3 Domaines a gérer et j'aimerais jongler avec les 3 domaines mais avec le même script.
Connexion ou Créer un compte pour participer à la conversation.
- Nicolas Lang
- Hors Ligne
- Membre junior
Réduire
Plus d'informations
- Messages : 31
- Remerciements reçus 0
il y a 11 ans 5 mois #12923
par Nicolas Lang
Réponse de Nicolas Lang sur le sujet Re:Lister les users AD avec date de dernier login
Par contre ce qu'il faut savoir, c'est que la date de dernier login n'est pas répliquée entre les différents contrôleurs de domaine.
Ainsi, si un utilisateur s'est par pur hasard toujours connecté sur AD1, si vous lancez votre requête et que c'est AD2 qui réponds, vous tomberez sur une date telle que 01/01/1601 ...
Ainsi, si un utilisateur s'est par pur hasard toujours connecté sur AD1, si vous lancez votre requête et que c'est AD2 qui réponds, vous tomberez sur une date telle que 01/01/1601 ...
Connexion ou Créer un compte pour participer à la conversation.
- Gaga
- Hors Ligne
- Membre junior
Réduire
Plus d'informations
- Messages : 39
- Remerciements reçus 0
il y a 11 ans 5 mois #12928
par Gaga
Réponse de Gaga sur le sujet Re:Lister les users AD avec date de dernier login
Darum a écrit :
Le mieux est de scruter tous les DC est de prendre la propriété \"LastLogon\" (non répliquée) la plus récente.
+1Par contre ce qu'il faut savoir, c'est que la date de dernier login n'est pas répliquée entre les différents contrôleurs de domaine.
Le mieux est de scruter tous les DC est de prendre la propriété \"LastLogon\" (non répliquée) la plus récente.
Connexion ou Créer un compte pour participer à la conversation.
- Matthew BETTON
- Hors Ligne
- Membre platinium
Réduire
Plus d'informations
- Messages : 968
- Remerciements reçus 0
il y a 11 ans 5 mois #12929
par Matthew BETTON
Réponse de Matthew BETTON sur le sujet Re:Lister les users AD avec date de dernier login
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.078 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- Lister les users AD avec date de dernier login