Как удалить сертификат Store добавленный makecert - PullRequest
7 голосов
/ 15 марта 2012

Используя опцию -ss инструмента Microsoft MakeCert.exe (-ss указывает имя хранилища сертификатов субъекта, в котором хранится выходной сертификат), я создаю свое собственное хранилище на сервере.Я могу удалить свой сертификат программно, но я не могу удалить сам магазин.Судя по сообщению об ошибке, это не поддерживается поставщиком.

Я даже не могу использовать оснастку MMC (certmgr.msc), чтобы удалить ее.Кто-нибудь знает, как это сделать?

PS cert:\LocalMachine> Remove-Item .\SigningStore
Remove-Item : L'exécution du fournisseur s'est arrêtée, car le fournisseur ne prend pas en charge cette opération.
Au niveau de ligne : 1 Caractère : 12
+ Remove-Item <<<<  .\SigningStore
    + CategoryInfo          : NotImplemented: (:) [Remove-Item], PSNotSupportedException
    + FullyQualifiedErrorId : NotSupported,Microsoft.PowerShell.Commands.RemoveItemCommand

Единственный найденный мной способ - использовать CertUnregisterSystemStore Win32 API

Ответы [ 4 ]

8 голосов
/ 20 декабря 2012

Я случайно создал магазин под названием Personal и хотел от него избавиться (конечно). Два личных магазина, чтобы искать тьфу. В любом случае, я добавил сертификат, который я создал, в это хранилище, скопировал отпечаток большого пальца (и удалил пробелы), а затем искал отпечаток в реестре. Я обнаружил, что могу заставить их уйти, удалив ключ (в моем случае Personal) в [HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ SystemCertificates \ Personal] (если на локальном компьютере) или в [HKEY_CURRENT_USER \ Software \ Microsoft \ SystemCertificates \ Personal] находится в текущем пользователе. Я знал, что это был не тот, кого называли Личным, потому что настоящий личный магазин на самом деле хранится как Мой.

РЕДАКТИРОВАТЬ: Мне пришлось удалить несколько других ключей, чтобы решить эту проблему, но в основном тщательно искать и изучать каждую запись, которая соответствует тому, что вы пытаетесь избавиться. Для каждого совпадения экспортируйте в reg-файл, а затем удалите и протестируйте.

Этот пост тоже был немного полезен: http://banachowski.com/deprogramming/2011/01/deleting-unwanted-certificate-stores-from-windows/

5 голосов
/ 28 декабря 2013

Используйте командлет PowerShell:

Remove-Item -Path cert:\LocalMachine\StoreYouWantToDelete 
4 голосов
/ 15 марта 2012

Читать это и add-type с кодом c # с pinvoke (уже сделано!) crypt32.dll

0 голосов
/ 15 марта 2012

Вы пробовали инструмент менеджера сертификатов?http://msdn.microsoft.com/en-us/library/e78byta0%28VS.80%29.aspx (см. Certmgr.exe / del)

...