rme1985
Goto Top

Powershell Datum abgeleichen Überladungen gefunden für "op Subtraction" und die Argumentanzahl 2

Guten Morgen,

ich wollte gerne das Ablaufdatum eines Zertifikates abgleichen, dazu nutze ich folgendes Skript

[Net.ServicePointManager]::ServerCertificateValidationCallback = { $true }
$url = "https://www.microsoft.com/"  
$req = [Net.HttpWebRequest]::Create($url)
$req.GetResponse() | Out-Null
$output = [PSCustomObject]@{
   URL = $url
   'Cert Start Date' = $req.ServicePoint.Certificate.GetEffectiveDateString()  
   'Cert End Date' = $req.ServicePoint.Certificate.GetExpirationDateString()  
}

danach wollte ich nun den Unterschied der Tage feststellen mit

$diffDays = ((get-date)-(($req.ServicePoint.Certificate.GetExpirationDateString()))).days


Klappt aber leider nicht.

Es kommt die Meldung
Es wurden mehrere nicht eindeutige Überladungen gefunden für "op_Subtraction" und die Argumentanzahl: "2".

Es scheint hier am $req.ServicePoint.Certificate.GetExpirationDateString() zu liegen, ich bekomme den Wert aber auch nicht mit [Datetime] oder ähnlichem konvertiert.

Hat jemand von Euch eine Idee was ich da machen muss damit das funktioniert?

Vielen Dank face-smile

Content-ID: 607254

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

Ausgedruckt am: 22.11.2024 um 16:11 Uhr

emeriks
Lösung emeriks 24.09.2020 aktualisiert um 09:49:50 Uhr
Goto Top
Hi,
$req.ServicePoint.Certificate.GetEffectiveDateString()
liefert String. Also musst Du diesen zuerst in ein Datum umwandeln, wenn Du damit rechnen willst.

$diffDays = ((get-date)-(get-date($req.ServicePoint.Certificate.GetEffectiveDateString()))).days

E.
manuel-r
manuel-r 24.09.2020 um 10:07:29 Uhr
Goto Top
Moin

Hat jemand von Euch eine Idee was ich da machen muss damit das funktioniert?

Bspw. so:
(New-TimeSpan -Start (Get-Date) -End ($req.ServicePoint.Certificate.GetExpirationDateString())).Days

Manuel
RME1985
RME1985 24.09.2020 um 10:35:43 Uhr
Goto Top
ah alles klar. Hab vielen Dank face-smile