Yakın zamanda PKI'mı yeniden oluşturdum ve ağımdaki tüm istemci makinelere verilen sertifikaları silmek istiyorum. Powershell için bir iş gibi geliyor! Bu komut dosyasını GPO tarafından dağıtılacak, SysVol'dan çalıştırılacak ve başlangıçta istemci makinelerde tetiklenecek şekilde yazdım:
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 }
}
Yükseltilmiş bir komut isteminden:
- Ran olduğunda, komut dosyası çıktı vermez (sadece yeni bir terminal satırı). Hiçbir hata döndürmez ve Sertifika silinmez.
- Argüman komut dosyasındaki komuta
-WhatIf
eklendiğindeRemove-Item
, yine hata olmaz ve Sertifika silinmez. - Remove-Item. \ CERTIFICATE-THUMBPRINT -Force çalıştırıldığında, sertifika silinir.
Bu bir izin sorunu mu? Bunu yapmanın daha akıllı / basit bir yolu var mı?
Teşekkürler!
write-host
koşul doğruysa ekrana bir şey dökmek için a ekleyin . Ben komut dosyası yanlış olarak değerlendiriyor, merak ediyorum (hiçbir hata ve hiçbir eylem açıklar).
Remove-Item -Force
?
remove-item -whatif
mi ??