Powershell - Datumswerte vergleichen geht nicht
Hi,
habe hier ein kleines Problem mit Powershell.
Ich will Zertifikate aus dem Windows Certificate Store des Benutzer abfragen und abgelaufene Zertifikate anzeigen. Aber das Vergleichen von "NotAfter" mit "Jetzt" (Get-Date) funktioniert nicht.
Habe unten drei Abfragen.
Die Erste
- liefert drei Zertifikate --> eins davon ist abgelaufen
- bei allen meldet er beim "kleiner als jetzt"-Vergleich "False".
Die Zweite
- liefert die selben drei Zertifikate --> eins davon ist abgelaufen
- bei allen meldet er beim "größer als jetzt"-Vergleich "True".
Die Dritte
- liefert die selben drei Zertifikate --> eins davon ist abgelaufen
- bei allen meldet er beim "ist gleich jetzt"-Vergleich "False".
Er müsste doch beim zweiten Zertifikat melden, dass "10/27/2117 00:00:00" kleiner ist als "01/09/2018 00:00:00"? Oder umgehkehrt letzteres größer?
Bin ich blind oder was mache ich falsch?
E.
habe hier ein kleines Problem mit Powershell.
Ich will Zertifikate aus dem Windows Certificate Store des Benutzer abfragen und abgelaufene Zertifikate anzeigen. Aber das Vergleichen von "NotAfter" mit "Jetzt" (Get-Date) funktioniert nicht.
Habe unten drei Abfragen.
Die Erste
- liefert drei Zertifikate --> eins davon ist abgelaufen
- bei allen meldet er beim "kleiner als jetzt"-Vergleich "False".
Die Zweite
- liefert die selben drei Zertifikate --> eins davon ist abgelaufen
- bei allen meldet er beim "größer als jetzt"-Vergleich "True".
Die Dritte
- liefert die selben drei Zertifikate --> eins davon ist abgelaufen
- bei allen meldet er beim "ist gleich jetzt"-Vergleich "False".
Er müsste doch beim zweiten Zertifikat melden, dass "10/27/2117 00:00:00" kleiner ist als "01/09/2018 00:00:00"? Oder umgehkehrt letzteres größer?
Bin ich blind oder was mache ich falsch?
E.
PS C:\Windows\system32> Get-childItem Cert:\CurrentUser\My | foreach{"NotAfter: " + $_.NotAfter.Date; "Jetzt: " + (Get-Date).Date; "kleiner: " + ($_.NotAfter.Date -lt (Get-Date).Date) }
NotAfter: 09/05/2018 00:00:00
Jetzt: 01/09/2018 00:00:00
kleiner: False
NotAfter: 10/27/2117 00:00:00
Jetzt: 01/09/2018 00:00:00
kleiner: False
NotAfter: 06/13/2022 00:00:00
Jetzt: 01/09/2018 00:00:00
kleiner: False
PS C:\Windows\system32> Get-childItem Cert:\CurrentUser\My | foreach{"NotAfter: " + $_.NotAfter.Date; "Jetzt: " + (Get-Date).Date; "größer: " + ($_.NotAfter.Date -gt (Get-Date).Date) }
NotAfter: 09/05/2018 00:00:00
Jetzt: 01/09/2018 00:00:00
größer: True
NotAfter: 10/27/2117 00:00:00
Jetzt: 01/09/2018 00:00:00
größer: True
NotAfter: 06/13/2022 00:00:00
Jetzt: 01/09/2018 00:00:00
größer: True
PS C:\Windows\system32> Get-childItem Cert:\CurrentUser\My | foreach{"NotAfter: " + $_.NotAfter.Date; "Jetzt: " + (Get-Date).Date; "gleich: " + ($_.NotAfter.Date -eq (Get-Date).Date) }
NotAfter: 09/05/2018 00:00:00
Jetzt: 01/09/2018 00:00:00
gleich: False
NotAfter: 10/27/2117 00:00:00
Jetzt: 01/09/2018 00:00:00
gleich: False
NotAfter: 06/13/2022 00:00:00
Jetzt: 01/09/2018 00:00:00
gleich: False
Please also mark the comments that contributed to the solution of the article
Content-Key: 360444
Url: https://administrator.de/contentid/360444
Printed on: April 19, 2024 at 13:04 o'clock
4 Comments
Latest comment
dass "10/27/2117 00:00:00" kleiner ist als "01/09/2018 00:00:00"?
Nö ist schon alles richtig .Älteres Datum ist immer kleiner als ein Neueres. 2117 ist ja wohl größer als 2017 , hast du dich da vertippt ?!
Abgelaufene Zertfikate auf die schnelle anzeigen:
gci Cert:\CurrentUser\my | ?{$_.NotAfter -lt (get-date)} | select Thumbprint,NotAfter,Subject
Tass Kaffee rüberschieb ...
Na dann beten wir mal das es uns bis dahin noch gibt .