PS: Calculer une date au format “Lastlogon”

Le “Lastlogon” représente la date de la dernière connexion d’un utilisateur sur le domaine AD.
Mais cette valeur n’est pas codé comme un simple date.

Elle correspond aux dizaines de milliers de millisecondes (100ene de microseconde) écoulées entre le 1er janvier 1601 et la date de la dernière connexion.

Pour convertir le lastlogon en date, un petit script en PowerShell et le tout est joué.

PowerShell:

$lastlogon={lastlogon a convertir}
$lastlogon /= 10000
(get-date -year 1601 -month 1 -day 1).addmilliseconds($lastlogon)

Et l’inverse, pour convertir une date au format “lastlogon”

PowerShell :

New-TimeSpan -Start (Get-Date -year 1601)
-End (Get-Date -year 2007 -month 12 -day 22)
|Format-List TotalMilliseconds

Retourne l’écart entre le 1 janvier 1601 et la date fournie en ms.

Pour retomber sur le format “Lastlogon”, convertir en 100ene de ns, soit multiplier le résultat par 10000.

This entry was posted in Scripting and tagged , . Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>