Я пытаюсь проверить сертификаты с истекшим сроком действия.Проблема в том, что мы оставляем просроченные на наших серверах иногда для справки, и я хочу отображать только те, которые приводят к истечению срока действия.Как исключить отрицательные целые числа в этом случае?
Пример вывода:
Истекает In (Дней): -25 NotAfter: 01.09.2008 10:56:27:00 Тема: CN = SERVER01.domain.com Эмитент: CN = SOMEAUTHICA01, DC = домен, DC = com
Истекает In (Дни): -17 NotAfter: 9/9 /2018 15:45:55 Тема: CN = SERVER02.domain.com Эмитент: CN = SOMEAUTHICA01, DC = домен, DC = com
$threshold = 30 #Number of days to look for expiring certificates
$deadline = (Get-Date).AddDays($threshold) #Set expiration deadline date
$serverList = 'SERVER01.domain.com','SERVER02.domain.com'
$expired = Invoke-Command -ComputerName $serverList { Dir Cert:\LocalMachine\My } | Sort-Object -Property NotAfter | Get-Unique | foreach {
If ($_.NotAfter -le $deadline) {$_ | Select Issuer, Subject, NotAfter, @{Label="Expires In (Days)";Expression={($_.NotAfter - (Get-Date)).Days}} }
}