emeriks
Goto Top

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.

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

Content-Key: 360444

Url: https://administrator.de/contentid/360444

Printed on: April 19, 2024 at 13:04 o'clock

Mitglied: 135111
Solution 135111 Jan 09, 2018 updated at 14:23:27 (UTC)
Goto Top
dass "10/27/2117 00:00:00" kleiner ist als "01/09/2018 00:00:00"?
Nö ist schon alles richtig face-smile.

Älteres Datum ist immer kleiner als ein Neueres. 2117 ist ja wohl größer als 2017 face-smile, 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 ...
Member: emeriks
emeriks Jan 09, 2018 updated at 14:30:48 (UTC)
Goto Top
Also doch blind ...

Danke!

Edit: Nicht vertippt. Das kommt so aus dem Zertifikat.
Mitglied: 135111
135111 Jan 09, 2018 at 14:38:49 (UTC)
Goto Top
Na dann beten wir mal das es uns bis dahin noch gibt face-smile.
Member: emeriks
emeriks Jan 09, 2018 at 14:43:48 (UTC)
Goto Top
Dieses stammt von Windows selbst. Das ist ein Zertifikat für EFS. Sollte reichen ... face-wink