Мы очищаем нашу серверную среду и должны найти все просроченные сертификаты и удалить их.Среда состоит из серверов Windows 2008 R2, Windows 2012, Windows 2012 R2
Я пробовал несколько опубликованных сценариев, которые не работают, они просто говорят, что они завершены без вывода.Я попробовал один опубликованный в stackoverflow: Скрипт Powershell для удаления сертификатов с истекшим сроком действия .Я также попробовал несколько сценариев ниже, но не повезло.Можно использовать один по отпечатку пальца, но мне нужно избавиться от всех просроченных сертификатов
'' '
Удалить по отпечатку пальца
Get-ChildItem Cert: \ LocalMachine \ My\ D20159B7772E33A6A33E436C938C6FE764367396 |Remove-Item
Удалить по теме / серийному номеру / издателю / безотносительно
Get-ChildItem Cert: \ LocalMachine \ My |Where-Object {$ _. Subject -match 'Frode F'} |Remove-Item '' '' '' $ today = Get-Date Сертификат Get-ChildItem: \ CurrentUser \ My |Где-Объект NotAfter -lt $ сегодня |Remove-Item
или
Get-ChildItem Cert: \ CurrentUser \ My |ForEach-Object -begin {$ now = get-date} -process {if ($ PSItem.NotAfter -lt $ now) {$ PSItem}} |Remove-Item '' *
Я пытаюсь добиться удаления ВСЕХ сертификатов с истекшим сроком действия на всех серверах в списке, используя оператор foreach, который ссылается на список серверов в текстовом файле, затем выходит и удаляетвсе сертификаты, срок действия которых истек с вчерашней даты и старше
Все, что вы, ребята, можете придумать, очень помогло бы мне
Любая помощь очень ценится