Як я можу експортувати сертифікат з MMC як файл PFX?


19

Я намагаюся змінити властивість KeySpec сертифіката підпису коду від Comodo, дотримуючись цього посібника . Посібник згадує імпорт вашого файлу сертифікатів у MMC, а потім його експортування пізніше. Однак, здається, я не маю можливості експортувати файл PFX. У мене вже є файл PFX; Я можу їх імпортувати успішно, але коли я перейду до експорту, параметр замурований / відключений.

pfx вимкнено

Що потрібно зробити, щоб увімкнути цей варіант експорту?

Відповіді:


29

Оснастка Сертифікатів дійсно не любить експортувати сертифікати PFX, але PowerShell це радий. Можна використовувати Export-PfxCertificateкомандлет.

  1. Перейдіть на псевдопривід сертифікатів, набравши cd cert:\в запиті PowerShell.
  2. Введіть cd CurrentUserабо cd LocalMachineвідповідно, де є сертифікат. Можливо, вам потрібно буде запустити PowerShell як адміністратор для експорту машинного сертифіката.
  3. cdу відповідний магазин ( dirможе допомогти). Персональний магазин у MMC зателефонований Myсюди.
  4. Використовуйте, dirщоб визначити, який ідентифікатор відповідає потрібному сертифікату.
  5. Введіть цю команду, щоб експортувати її як PFX з паролем:

    Export-PfxCertificate -Cert .\LONGSTRINGOFHEX -FilePath 'C:\path\to\outfile.pfx' -Password (ConvertTo-SecureString -String 'password' -AsPlainText -Force)
    

    LONGSTRINGOFHEXслід замінити ідентифікатором вашого сертифіката. На щастя, на цьому ви можете скористатися заповненням вкладок.

Після виконання цієї команди у вас є сертифікат PFX, захищений паролем, який ви ввели. PowerShell відмовляється експортувати приватний ключ сертифіката без пароля, і пароль не може бути порожнім. Тим не менш, ваш PFX не працює.


Пробачте, будь ласка, таке неосвічене запитання, але як мені встановити командлет? В даний час, коли я набираю cert:PS, я отримую "Термін" cert: "не розпізнається як ім'я командлету, функції, файлу сценарію або функціонуючої програми." Windows 10 звичайно.
soapergem

@SoaperGEM Мої вибачення, cd cert:\замість цього має бути .
Ben N

1
@SoaperGEM Цей командлет доступний у Windows 8, 8.1, 10, Server 2012 та Server 2012 R2. Судячи з вашого скріншоту, ви налаштовані. Також, імпортуючи ваш сертифікат, знайдіть прапорець, який дозволяє позначити приватний ключ як експортний. Це повинно дати вам можливість експортувати його через MMC.

2
Я отримую помилку - неможливо експортувати приватний ключ, який не експортується. Хтось може допомогти визначити проблему.
Раджа Дорджі

1
@RajaDorji Якщо приватний ключ був позначений як неекспортний, система, як правило, відмовляється експортувати. Такі інструменти, як Mimikatz ( згаданий тут ), можуть обійти це за допомогою неофіційних методів.
Бен N

0

Якщо ви імпортуєте сертифікат у магазин WebHosting, ви не можете експортувати приватний ключ. Перемістіть його в Персональний магазин, і ви зможете експортувати як PFX. Мені вдалося це зробити в Windows 2012R2 без необхідності переходити до командного рядка та використовувати Export-PfxCertificate (що болить, оскільки я не міг з'ясувати ідентифікатор сертифіката, щоб врятувати своє життя).


Гаразд, я помиляюся. Тільки пощастило. Мені довелося спробувати це завдання ще раз (перевидано сертифікат), і цей метод більше не працює :(
MC9000

Ви можете знайти ідентифікатор сертифіката, перейшовши на IIS> Machine> Сертифікати сервера або cd cert:\LocalMachine\Myпотім "dir"
Devin Gleason Lambert

-1

Експортуйте файл .P7B один раз. А потім поверніться та спробуйте експортувати сертифікат ще раз. У наступний раз ввімкніть експорт .PFX.


Це звичайно не працює!
MC9000
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.