У меня есть простой сценарий для отображения всех сертификатов на сервере, я хотел бы расширить этот сценарий, чтобы затем удалить все сертификаты с истекшим сроком действия
Я попробовал несколько сценариев от MS и сторонних разработчиков, чтобы найти сертификаты для удаления, но мне не повезло, что они работают должным образом
Первый код, который я использую:
Сертификат Get-ChildItem: \ -Recurse
Этот скрипт Powershell показывает все сертификаты на сервере.
Пример вывода приведен ниже для каждого сертификата. Я хочу настроить таргетинг на поле NotAfter, чтобы скрипт удалил сертификат, если он устарел, чем сегодняшняя дата
Тема:
Эмитент:
Отпечаток:
Дружественное имя:
Не раньше, чем:
NotAfter:
Расширения
Я также хотел бы сделать это для списка серверов, запустить скрипт на каждом сервере в текстовом документе, запросить все сертификаты, затем удалить сертификаты, срок действия которых истек, и перейти к следующему серверу.
Я видел какой-то код, нацеленный на дату, например:
ForEach-Object -begin {$ now = get-date} -process {if ($ PSItem.NotAfter -lt $ now) {$ PSItem}} | Remove-Item
Я бы хотел, чтобы скрипт вышел и запросил сертификаты серверов, а затем удалил устаревшие сертификаты