Ich habe kürzlich meine PKI neu erstellt und möchte die Zertifikate löschen, die für alle Clientcomputer in meinem Netzwerk ausgestellt wurden. Klingt nach einem Job für Powershell! Also habe ich dieses Skript geschrieben, um es vom Gruppenrichtlinienobjekt zu verteilen, von SysVol aus auszuführen und beim Start auf Client-Computern auszulösen:
set-location cert:\LocalMachine\My
$certname = $env:COMPUTERNAME + ".domain.com"
get-item * | %{
if($_.issuer -like "CN=IssuingCA*" -and $_.DnsNameList.unicode -like $certname) { remove-item .\$_.Thumbprint -Force }
}
An einer Eingabeaufforderung mit erhöhten Rechten:
- Bei Ran gibt das Skript keine Ausgabe aus (einfach eine neue Terminalzeile). Es werden keine Fehler zurückgegeben und das Zertifikat wird nicht gelöscht.
- Wenn das Argument
-WhatIf
demRemove-Item
Befehl im Skript hinzugefügt wird, treten erneut keine Fehler auf und das Zertifikat wird nicht gelöscht. - Wenn Remove-Item. \ CERTIFICATE-THUMBPRINT -Force ausgeführt wird, wird das Zertifikat gelöscht.
Ist dies ein Berechtigungsproblem? Gibt es eine intelligentere / einfachere Möglichkeit, dies zu tun?
Vielen Dank!
remove-item -whatif
??write-host
, um etwas auf dem Bildschirm abzulegen, wenn die Bedingung erfüllt ist. Ich frage mich, ob das Skript als falsch ausgewertet wird (würde erklären, dass kein Fehler und keine Aktion vorliegt).Remove-Item -Force
?Antworten:
Meine Antwort lautet: "Gibt es einen intelligenteren / einfacheren Weg, dies zu tun?" Teil Ihrer Frage. Mit diesem Skript konnte ich erfolgreich ein Go-Daddy-Zertifikat entfernen
Ich habe ein hinzugefügt,
-WhatIf
damit dieser Code für das Folx "copy \ paste \ run" nicht gefährlich ist. Nun müssen Sie die Anpassung$Path
,Where-Object
und die Add$certname
Variable, aber die obige Vorlage sollten Sie gehen.quelle
Obwohl ich das Problem mit dem Skript nicht lösen konnte, konnte ich einen "intelligenteren / einfacheren" Weg finden, um mein Ziel zu erreichen .
Von der Zertifizierungsstelle:
Certificate Templates
und auswählenManage
Reenroll All Certificate Holders
Dadurch wird die Versionsnummer der Vorlage erhöht, und Netzwerksysteme mit automatischer Registrierung löschen das alte Zertifikat und registrieren sich mit dem neuen Zertifikat.
Obwohl dies eine automatische Registrierung für die spezifische Vorlage erfordert, mit der ich arbeite, wäre eine Lösung für das veröffentlichte Skript eine vorzuziehende Antwort.
quelle