Поделиться через


Certmgr.exe (средство диспетчера сертификатов)

Средство диспетчера сертификатов (Certmgr.exe) предназначено для управления сертификатами, списками доверия сертификатов (CTL) и списками отзыва сертификатов (CRL).

ПримечаниеПримечание

Средство диспетчера сертификатов (Certmgr.exe) является утилитой командной строки, в то время как сертификаты (Certmgr.msc) — это оснастка консоли управления Microsoft (MMC).Поскольку файл Certmgr.msc обычно находится в каталоге System Windows, при вводе certmgr в командной строке может загрузиться оснастка консоли управления (MMC) "Сертификаты", даже если открыта командная строка Visual Studio.Это происходит потому, что путь к оснастке предшествует пути к средству диспетчера сертификатов в переменной среды PATH.При возникновении этой проблемы можно выполнить команды Certmgr.exe, указав путь к исполняемому файлу.

Это средство устанавливается автоматически с Visual Studio и пакетом SDK Windows. Чтобы запустить инструмент, мы рекомендуем использовать командную строку Visual Studio или командную строку пакета Windows SDK (командную оболочку). Эти служебные программы позволяют легко работать с инструментом, не переходя к папке установки. Дополнительные сведения см. в разделе Командная строка Visual Studio и пакета Windows SDK.

  • Если на компьютере установлена среда Visual Studio: на панели задач последовательно щелкните Start, All Programs, Visual Studio, Visual Studio Tools и Visual Studio Command Prompt.

    – или –

    Если на компьютере установлен пакет Windows SDK: на панели задач щелкните Start, выберите All Programs и откройте папку с пакетом Windows SDK, затем щелкните Command Prompt (или CMD Shell).

  • В командной строке введите следующее:

certmgr [/add | /del | /put] [options]
[/s[/r registryLocation]] [sourceStorename]
[/s[/r registryLocation]] [destinationStorename]

Параметры

Аргумент

Описание

имя_исходного_хранилища

Хранилище сертификатов, содержащее существующие сертификаты, списки доверенных сертификатов (CTL) и списки отзыва сертификатов (CRL) для добавления, удаления, сохранения или отображения. Это может быть файл хранилища или хранилище систем.

имя_конечного_хранилища

Конечный файл или хранилище сертификатов.

Параметр

Описание

/add

Добавление сертификатов, списков CTL и CRL в хранилище сертификатов.

/all

Добавляет все записи при использовании с параметром /add. Удаляет все записи при использовании с параметром /del. Отображает все записи при использовании без параметров /add и /del. Параметр /all не может быть использован с параметром /put.

/c

Добавляет сертификаты при использовании с параметром /add. Удаляет сертификаты при использовании с параметром /del. Сохраняет сертификаты при использовании с параметром /put. Отображает сертификаты при использовании без параметра /add, /del или /put.

/CRL

При использовании с параметром /add добавляет списки отзыва сертификатов (CRL). При использовании с параметром /del удаляет списки отзыва сертификатов (CRL). Сохраняет CRL при использовании с параметром /put. Отображает списки отзыва сертификатов при использовании без параметра /add, /del или /put.

/CTL

При использовании с параметром /add добавляет списки доверия сертификатов (CTL). При использовании с параметром /del удаляет списки доверия сертификатов (CTLs). Сохраняет CTL при использовании с параметром /put. Отображает списки доверия сертификатов при использовании без параметра /add, /del или /put.

/del

Удаление сертификатов, списков CTL и CRL из хранилища сертификатов.

/e тип_шифрования

Указывает тип шифрования сертификата. По умолчанию используется значение X509_ASN_ENCODING.

/f dwFlags

Задает флаг открытого хранилища. Это параметр dwFlags, передаваемый методу CertOpenStore. По умолчанию используется значение CERT_SYSTEM_STORE_CURRENT_USER. Этот параметр обрабатывается, только если задан параметр /y.

/h[elp]

Отображает синтаксис команд и параметры программы.

/n имя

Задает общее имя добавляемого, удаляемого или сохраняемого сертификата. Этот параметр может применяться только для сертификатов, его нельзя задавать для списков CTL и CRL.

/put

Сохранение сертификатов X.509, списков CTL и CRL из хранилища сертификатов в файл. Файл сохранен в формате X.509. Чтобы сохранить файл в формате PKCS #7, можно использовать параметр /7 с параметром /put. За параметром /put должен следовать параметр /c, /CTL или /CRL. Параметр /all не может быть использован с параметром /put.

/r расположение

Указывает расположение системного хранилища в реестре. Этот параметр обрабатывается, только если задан параметр /s. расположение должно быть одним из следующих:

  • currentUser означает, что хранилище сертификатов находится в разделе HKEY_CURRENT_USER. Это значение по умолчанию.

  • localMachine означает, что хранилище сертификатов находится в разделе HKEY_LOCAL_MACHINE.

/s

Означает, что хранилище сертификатов является системным. Если этот параметр не задан, хранилище считается StoreFile.

/sha1 Хэш sha1

Задает хэш SHA1 добавляемого, удаляемого или сохраняемого сертификата.

/v

Включает отображение подробных сведений о сертификатах, списках CTL, CRL. Этот параметр несовместим с параметрами /add, /del или /put.

/y поставщик

Задает имя поставщика хранилища.

/7

Сохраняет итоговое хранилище как объект PKCS #7.

/?

Отображает синтаксис команд и параметры программы.

Заметки

Основные функции программы Certmgr.exe.

  • Вывод сведений о сертификатах, списках CTL и CRL в консоль.

  • Добавление сертификатов, списков CTL и CRL в хранилище сертификатов.

  • Удаление сертификатов, списков CTL и CRL из хранилища сертификатов.

  • Сохранение сертификатов X.509, списков CTL и CRL из хранилища сертификатов в файл.

Программа Certmgr.exe работает с двумя типами хранилищ сертификатов: системным и StoreFile. Указывать тип хранилища необязательно: Cedrtmgr.exe может автоматически определить тип хранилища и выполнить соответствующие действия.

При запуске программы Certmgr.exe без параметров запускается оснастка certmgr.msc, у которой есть графический интерфейс пользователя, облегчающий выполнение задач администрирования сертификатов, которые можно также выполнить из командной строки. В графическом интерфейсе пользователя имеется мастер импорта, копирующий сертификаты, списки CTL и CRL с диска в хранилище сертификатов.

Дополнительные сведения о сертификатах см. в разделе About CryptoAPI документации Microsoft Platform SDK.

Примеры

Следующая команда выводит подробные сведения о содержимом системного хранилища my, используемого по умолчанию.

certmgr /v /s my

Следующая команда добавляет все сертификаты из файла myFile.ext в новый файл newFile.ext.

certmgr /add /all /c myFile.ext newFile.ext

Следующая команда добавляет сертификат в файл с именем testcert.cer в хранилище системы my.

certmgr /add /c testcert.cer /s my

Следующая команда добавляет сертификат в файл с именем TrustedCert.cer в хранилище конревых сертификатов.

certmgr /c /add TrustedCert.cer /s root

Следующая команда сохраняет сертификат с общим именем myCert в системном хранилище my в файл newCert.cer.

certmgr /add /c /n myCert /s my newCert.cer

Следующая команда удаляет все списки CTL из системного хранилища my и сохраняет полученное хранилище в файл newStore.str.

certmgr /del /all /ctl /s my newStore.str

Следующая команда сохраняет сертификат в системном хранилище my в файл newFile. Программа запросит у пользователя номер сертификата из хранилища my, который следует поместить в файл newFile.

certmgr /put /c /s my newFile

См. также

Ссылки

Makecert.exe (средство создания сертификатов)

Командная строка Visual Studio и пакета Windows SDK

Другие ресурсы

Инструменты .NET Framework

Журнал изменений

Дата

Журнал

Причина

Апрель 2011

Добавлены сведения об использовании командных строк Visual Studio и Windows SDK.

Улучшение информации.

Май 2010

Обновлен синтаксис и добавлены некоторые примеры.

Обратная связь от клиента.