Варианты хранения криптографических ключей
Продолжает расти популярность решений на основе PKI — всё больше сайтов переходят на HTTPS, предприятия внедряют цифровые сертификаты для аутентификации пользователей и компьютеров, S/MIME доказывает свою состоятельность и для шифрования электронной почты, и как способ проверки источника сообщений для противодействия фишингу. Но шифрование и аутентификация в этих приложениях практически бессмысленны без правильного управления ключами.
Каждый раз при выдаче цифрового сертификата от центра сертификации (ЦС) или самоподписанного сертификата нужно сгенерировать пару из закрытого и открытого ключей. Согласно лучшим практикам, ваши секретные ключи должны быть защищены и быть, ну… секретными! Если кто-то их получит, то сможет, в зависимости от типа сертификата, создавать фишинговые сайты с сертификатом вашей организации в адресной строке, аутентифицироваться в корпоративных сетях, выдавая себя за вас, подписывать приложения или документы от вашего лица или читать ваши зашифрованные электронные письма.
Во многих случаях секретные ключи — личные удостоверения ваших сотрудников (и, следовательно, часть персональных данных организации), так что их защита приравнивается к защите отпечатков пальцев при использовании биометрических учётных данных. Вы же не позволите хакеру добыть отпечаток своего пальца? То же самое и с секретными ключами.
В этой статье мы обсудим варианты защиты и хранения закрытых ключей. Как вы увидите, эти варианты могут незначительно отличаться в зависимости от типа сертификата(ов) и от того, как вы его используете (например, рекомендации для сертификатов SSL/TLS отличаются от рекомендаций для сертификатов конечных пользователей).
Хранилища сертификатов/ключей в ОС и браузерах
Примеры: хранилище сертификатов Windows, связка ключей Mac OS
В некоторых операционных системах и браузерах есть хранилища сертификатов или ключей. Это программные базы данных, которые локально на вашем компьютере хранят пару из закрытого и открытого ключей как часть сертификата. Такое хранение ключей довольно популярно: многие приложения автоматически сразу ищут ключи здесь, и не нужно вручную каждый раз указывать файл сертификата, так что это довольно удобный вариант.
Ещё один плюс такого варианта — его довольно легко настраивать. Вы можете включить/отключить экспорт закрытого ключа, включить для него надёжную защиту (ввод пароля при каждом использовании сертификата), и можно создать резервные копии, если закрытый ключ экспортируется. Кроме того, при включении роуминга профилей в Windows сертификат привязывается к профилю и становится доступным при входе на другой компьютер с этим профилем.
Если решите выбрать такой вариант, то следует учесть несколько аспектов. Во-первых, даже если пометить закрытый ключ как неэкспортируемый, некоторые утилиты могут обойти эту защиту (то есть невозможность экспорта не гарантирована). Кроме того, если кто-то работал под вашей учётной записью, а вы не включили сильную защиту закрытого ключа (пароль при использовании сертификата), то они могут использовать ваш сертификат. Наконец, если ваш закрытый ключ помечен как экспортируемый, то кто-нибудь за вашим компьютером сможет экспортировать его. Даже если у вас включена защита секретного ключа, при экспорте пароль не спрашивается.
И последнее: Chrome и IE используют хранилище сертификатов Windows, в то время как у Firefox собственное хранилище сертификатов (от Mozilla). Это значит, что если вы импортируете сертификат в хранилище Windows, то Chrome и IE автоматически найдут его, а Firefox нет.
Типичные приложения:
- Приложения для цифровой подписи (например, Adobe Acrobat, Microsoft Outlook и Office будут обращаться в хранилище сертификатов Windows [пользовательское]).
- Сервер Microsoft IIS тоже ищет SSL-сертификаты в хранилище сертификатов Windows [общем для компьютера].
- Аутентификация клиента (пользователя или компьютера), в зависимости от настроек, чаще всего обращается к хранилищу сертификатов Windows.
- Подпись кода в Windows (приложения и драйверы).
Файлы .pfx и .jks (хранилища ключей)
Файлы PKCS#12 (.pfx или .p12) и .jks* (созданные инструментом Java Keytool) содержат ваши закрытый и открытый ключи. В отличие от локальных хранилищ для ОС и браузеров, эти файлы могут размещаться практически в любом месте, включая удалённые серверы, и всегда защищены паролем (то есть каждый раз при использовании своего секретного ключа нужно ввести пароль). Другая привлекательная особенность: поскольку это просто файлы, то несложно разослать копии для нескольких человек, которым нужно использовать сертификат.
Если решите сохранить файл на удалённом сервере, то следует особенно позаботиться об ограничении доступа к нему. Если кто-то получит доступ, то сможет использовать ваш сертификат. Аналогично, следует быть особенно осторожным с лёгким копированием и распространением этих файлов. Хотя это и большое удобство для вас, но одновременно и злоумышленнику будет просто сделать копию, если он получит доступ к вашему хранилищу ключей. Пароль закрытого ключа по-прежнему необходим для эффективного использования скопированного файла. Это еще одна причина, чтобы использовать надёжные пароли из 15-ти и больше символов, содержащие заглавные буквы, цифры и специальные символы. С этим вариантом хранения нужно учитывать ещё одну вещь: на конечного пользователя накладывается больше ответственности с точки зрения того, где находится файл и правильно ли он хранится.
Если вы не можете использовать криптографическое оборудование или хранилище ключей Windows (описано выше), но всё же хотите повысить безопасность (вместо того, чтобы просто разместить файл хранилища ключей на компьютере), то можно записать этот файл на флэшку, которая будет лежать в безопасном месте. Конечно, здесь теряется некоторое удобство, так что если нужно часто использовать подпись, то вы скорее захотите хранить файл локально для облегчения доступа.
Типичные приложения:
- Подписание кода Windows или Java.
- FDA ESG и IRS IDES используют .pfx для безопасной связи с американскими госслужбами.
- Некоторые веб-серверы (например, Apache Tomcat или Jboss).
* Примечание: Java недавно перешла с JKS на PKCS#12 в качестве типа хранилища ключей по умолчанию.
Криптографические токены и смарт-карты
Как вскользь упомянуто выше, можно повысить безопасность, если хранить секретный ключ на отдельном оборудовании. Но есть большая разница между использованием криптографических токенов или смарт-карт и стандартных флэш-накопителей. С криптографическим оборудованием ключ генерируется на самом оборудовании и не экспортируется. Закрытый ключ никогда не покидает устройство, что сильно затрудняет постороннему получение доступа и компрометацию.
Примечание: если вы хотите дополнительно обезопасить закрытый ключ, который уже сгенерирован ранее (т. е. не на самом токене), то можно импортировать .pfx-файл на токен, а затем удалить оригинальный .pfx.
С токеном каждый раз при использовании сертификата нужно вводить пароль. Это значит, что даже если кто-то получит ваш токен, ему всё равно понадобится пароль. Хранение ключа в токене означает, что вы можете безопасно использовать один и тот же сертификат на нескольких компьютерах без необходимости создания нескольких копий и прохождения процесса экспорта/импорта. Криптографическое оборудование соответствует FIPS, что требуется для некоторых отраслевых и государственных регламентов.
Конечно, есть некоторые другие соображения, которые следует иметь в виду, если вы решите выбрать такой вариант. Кроме дополнительных сложностей управления токенами, такой вариант может не работать с автоматическими сборками из-за требования ввести пароль при каждом использовании сертификата. Также нет никакого способа создать резервную копию сертификата, поскольку закрытый ключ не экспортируется (недостаток дополнительной безопасности). Наконец, в некоторых сценариях такой вариант хранения просто невозможен. Например, если специализированные устройства не поддерживают токены или смарт-карты. Или в ситуациях, когда сотрудники не имеют физического доступа к компьютеру, а работают с удалённых терминалов.
Типичные приложения:
Как правило, все варианты использования, перечисленные для хранилищ в ОС/браузере (подпись документов и кода, аутентификация клиента, Windows IIS), поддерживают крипто-токены или смарт-карты — если есть соответствующие драйверы. Однако это не всегда практично (например, в веб-серверах или автоматизированных системах сборки для подписи кода, которые будут требовать ввод пароля каждый раз при применении подписи).
Соответствие нормативным требованиям — одна из основных причин использования криптографических токенов.
- Обязательно для подписания кода расширенной проверки (EV) в соответствии с рекомендациями форума CA/Browser.
- Рекомендуется для стандартной подписи кода в соответствии с минимальными требованиями CA Security Council. Центры сертификации обязаны рекомендовать криптографическое оборудование в качестве основного варианта выдачи сертификатов. Если криптографическое оборудование не выдаётся, клиент должен подписать соглашение, что будет хранить закрытый ключ на каком-то съёмном оборудовании (которое вынимается после подписания).
- Требуется для цифровой подписи и получения доверенного статуса в программах Adobe, в соответствии с требованиями Adobe Approved Trust List (AATL).
- Отраслевые правила, такие как CFR 21 часть 11 от FDA и требования к цифровой подписи в отдельных странах часто говорят о секретном ключе, который находится в единоличном владении собственника. Хранение на криптографическом оборудовании отвечает этим требованиям.
Аппаратные криптографические модули (HSM)
HSM — ещё одно аппаратное решение для хранения ключей, особенно если вы не хотите полагаться на отдельные токены либо это кажется слишком обременительным. В то время как токены больше ориентированы на ручной ввод или отдельные приложения (например, подписание небольшого количества документов или кода, аутентификация в VPN или других сетях), то HSM предоставляют API, поддерживают автоматизированные рабочие процессы и автоматизированную сборку. Они также соответствуют требованиям FIPS и обычно обеспечивают более высокий рейтинг, чем токены.
Традиционно HSM — это локальные физические устройства, требующие квалифицированных ресурсов для управления и обеспечения базовых требований и SLA. Обслуживание HSM может оказаться дорогим и ресурсоёмким процессом, что в прошлом препятствовало распространению этой технологии. К счастью, в последние годы появились облачные модули HSM, которые предоставляют многие из преимуществ локальных HSM, не нуждаясь в локальном обслуживании.
Примером может служить знакомый многим сервис Key Vault в облаке Microsoft Azure, которое хранит криптографические ключи в облачном HSM от Microsoft. Если у вас небольшая организация, которая не позволит себе покупку и управление собственным HSM, то это отличное решение, которое интегрируется с публичными центрами сертификации, включая GlobalSign.
Если вы рассматриваете вариант с подписью документов, то недавно мы запустили новую службу Digital Signing Service, где тоже используется облачное хранилище HSM для закрытых ключей. Стоит отметить, что новая служба поддерживает индивидуальные подписи всех сотрудников. В прошлом в большинстве HSM-решений для подписи поддерживались только идентификаторы на уровне отделов или организаций (например, бухгалтерия, маркетинг, финансы), а не отдельных людей (например, Джон Доу). Следовательно, для работы на уровне отдельных сотрудников организациям приходилось разворачивать инфруструктуру токенов, которая, как мы отметили выше, может оказаться обременительной. С помощью этой новой службы цифровые подписи отдельных сотрудников внедряются без необходимости самостоятельно управлять HSM (и без риска потери токенов сотрудниками).
Типичные приложения:
- Подпись документов или кода в большом количестве.
- SSL (в зависимости от конфигурации сервера).
- Инфраструктура ЦС для работы собственного ЦС (корневого ЦС, подчинённого ЦС, сервера меток времени RFC 3161) в офлайне или онлайне (корневой ЦС, как правило, работает в офлайне).
Будущие методы хранения ключей
Мы рассмотрели основные варианты, которые использовались в течение многих лет. Но кажется, что ничто в мире информационной безопасности, в том числе и хранение ключей, не застраховано от влияния IoT, так что разрабатываются новые варианты.
По мере того как все больше и больше устройств подключаются к сети с необходимостью аутентификации и безопасного обмена данными, многие разработчики и производители обращаются к решениям на основе PKI. В свою очередь, это приводит к новым соображениям, требованиям и технологиям защиты закрытых ключей. Ниже приведены две тенденции, которые мы видим в этой области.
Доверенный платформенный модуль (TPM)
Модули TPM сами по себе не новы, но всё чаще их используют для защиты закрытых ключей. Доверенный платформенный модуль можно использовать для хранения (или переноса) корневого ключа и защиты дополнительных ключей, созданных приложением. Ключи приложений нельзя использовать без TPM, что делает его очень полезным методом аутентификации для оконечных точек, таких как ноутбуки, серверы и производители устройств Интернета вещей. В то время как многие ноутбуки уже поставляются с TPM, пока эта технология не слишком широко используется в корпоративном секторе. Однако в мире IoT они часто применяются для безопасной индентификации устройств как аппаратный корень доверия.
IoT создал проблему, когда много анонимно взаимодействующих устройств облегчают хакерам перехват сообщений или имперсонификацию устройств. Модуль TPM внедряется ещё на этапе производства для защиты криптографического ключа и, следовательно, для надёжной идентификации устройства.
При производстве генерируется пара из закрытого и открытого ключей. Открытый ключ отправляется в центр сертификации для подписания и выдачи цифрового сертификата. Закрытый ключ никогда не покидает устройство. Он хранится на чипе и не может быть экспортирован/скопирован/уничтожен. Теперь сертификат — это паспорт устройства, а защищённый закрытый ключ формирует аппаратный корень доверия.
Мы тесно сотрудничаем с Infineon для разработки решений Интернета вещей, сочетающих идентификацию устройств на основе PKI с корнями доверия на основе TPM. Для получения дополнительной информации ознакомьтесь с подтверждением концепции: «Безопасная аутентификация и управление оборудованием с помощью облачных служб сертификатов GlobalSign и OPTIGA TPM от Infineon.»
Физически неклонируемые функции (PUF)
Технология физически неклонируемых функций (PUF) — это сдвиг парадигмы в защите ключей. Вместо хранения ключей (с вероятностью физической атаки) они генерируются из уникальных физических свойств статической памяти SRAM конкретного чипа и существуют только при включении питания. То есть вместо надёжного хранения закрытого ключа один и тот же ключ восстанавливается снова и снова по требованию (пока устройство не выйдет из строя). Этот ключ гарантированно уникален, потому что при генерации используется присущая неконтролируемая неупорядоченность в кремниевой структуре чипа.
Технология PUF в сочетании с доверенной средой исполнения (TEE) — привлекательное решение, если требуется недорогая, простая в интеграции и ультра-безопасная защита ключа. PUF вместе с PKI составляют исчерпывающее решение для идентификации.
Наш партнёр Intrinsic ID разработал такую систему подготовки ключа на основе SRAM PUF, которая производит уникальные, защищённые от подделки и копирования идентификаторы устройств на аппаратном уровне. Используя наши службы сертификации, мы переводим эти идентификаторы в цифровые удостоверения, добавляя возможности PKI. Таким образом, каждому устройству присваивается уникальная, защищённая от клонирования пара ключей, которая не хранится на устройстве в выключенном состоянии, но устройство способно воссоздать этот ключ по запросу. Это защищает от атаки на выключенное устройство.
Дополнительно о нашем совместном решении для идентификации
устройств Интернета вещей см. недавний вебинар: «Стойкие идентификаторы устройств с сертификатами на основе SRAM PUF».
Не теряйте (секретные) ключи от своей крепости!
Хранение закрытого ключа не должно быть чёрной магией. В конечном счёте, правильный вариант зависит от того, кто и для чего использует сертификаты, какие нормы приходится соблюдать, какова цена, текущее окружение и внутренние ресурсы. Надеюсь, эта статья поможет в вашем решении.
_______________________________________________________
АКЦИЯ GLOBALSIGN: Wildcard SSL + 1 ГОД В ПОДАРОК
Защитите все субдомены одним сертификатом!
Экономьте до 30 тысяч рублей при покупке сертификата Wildcard SSL на 2 года!
Промо-код: WC001HRFR
Акция действует для подписчиков блога GlobalSign до 15 июня 2018 г.
Дополнительную информацию вы можете получить у менеджеров GlobalSign по телефону: +7 (499) 678 2210 либо заполнив форму на сайте с указанием промо-кода.
Данный материал является переводом оригинальной статьи «ATA Learning : Michael Soule : Manage Certs with Windows Certificate Manager and PowerShell».
Работа с сертификатами обычно является одной из тех дополнительных задач, которые вынужден брать на себя системный администратор Windows. Диспетчер Сертификатов Windows (Windows Certificate Manager) — это один из основных инструментов, который позволяет выполнять эту работу.
В этой статье мы рассмотрим работу с сертификатами применительно к операционной системе Windows. Если же вы хотите узнать больше о том, как работают сертификаты в целом, ознакомьтесь с сопутствующей статьей «Your Guide to X509 Certificates».
Понимание хранилищ сертификатов
В диспетчере сертификатов Windows все сертификаты находятся в логических хранилищах, называемых «хранилищами сертификатов». Хранилища сертификатов – это «корзины», в которых Windows хранит все сертификаты, которые в настоящее время установлены, и сертификат может находиться более чем в одном хранилище.
К сожалению, хранилища сертификатов — не самая интуитивно понятная концепция для работы. О том, как различать эти хранилища и как с ними работать, вы прочитаете ниже.
Каждое хранилище находится в Реестре Windows и в файловой системе. При работе с сертификатом в хранилище вы взаимодействуете с логическим хранилищем, не изменяя напрямую реестр или файловую систему. Этот более простой способ позволяет вам работать с одним объектом, в то время как Windows заботится о том, как представить этот объект на диске.
Иногда можно встретить хранилища сертификатов, называемые физическими или логическими хранилищами. Физические хранилища ссылаются на фактическую файловую систему или место в реестре, где хранятся разделы реестра и / или файл(ы). Логические хранилища — это динамические ссылки, которые ссылаются на одно или несколько физических хранилищ. С логическими хранилищами намного проще работать, чем с физическими хранилищами для наиболее распространенных случаев использования.
Windows хранит сертификаты в двух разных областях — в контексте пользователя и компьютера. Сертификат помещается в один из этих двух контекстов в зависимости от того, должен ли сертификат использоваться одним пользователем, несколькими пользователями или самим компьютером. В остальной части этой статьи сертификат в контексте пользователя и компьютера будет неофициально называться сертификатами пользователей и сертификатами компьютеров.
Сертификаты пользователей
Если вы хотите, чтобы сертификат использовался одним пользователем, то идеальным вариантом будет хранилище пользовательских сертификатов внутри Диспетчера сертификатов Windows. Это общий вариант использования процессов аутентификации на основе сертификатов, таких как проводной IEEE 802.1x.
Сертификаты пользователей находятся в профиле текущего пользователя и логически отображаются только в контексте этого пользователя. Сертификаты пользователей «сопоставлены» и уникальны для каждого пользователя даже в одних и тех же системах.
Компьютерные сертификаты
Если сертификат будет использоваться всеми пользователями компьютера или каким-либо системным процессом, его следует поместить в хранилище в контексте компьютера. Например, если сертификат будет использоваться на веб-сервере для шифрования связи для всех клиентов, размещение сертификата в контексте компьютера будет подходящим вариантом.
Вы увидите, что хранилище сертификатов компьютера логически сопоставлено для всех пользовательских контекстов. Это позволяет всем пользователям использовать сертификаты в хранилище сертификатов компьютера в зависимости от разрешений, настроенных для закрытого ключа.
Сертификаты компьютера находятся в кусте реестра локального компьютера и в подкаталогах ProgramData. Сертификаты пользователя находятся в кусте реестра текущего пользователя и в подкаталогах AppData. Ниже вы можете увидеть, где каждый тип хранилища находится в реестре и файловой системе.
Контекст | Путь реестра | Объяснение |
---|---|---|
User | HKEY_CURRENT_USER SOFTWAREMicrosoftSystemCertificates |
Физическое хранилище для пользовательских открытых ключей |
User | HKEY_CURRENT_USER SOFTWAREPoliciesMicrosoftSystemCertificates |
Физическое хранилище для пользовательских открытых ключей, установленных объектами групповой политики Active Directory (AD) (GPO) |
Computer | HKEY_LOCAL_MACHINE SOFTWAREMicrosoftSystemCertificates |
Физическое хранилище общедоступных ключей для всей машины |
Computer | HKEY_LOCAL_MACHINE SOFTWAREMicrosoftCryptographyServices |
Физическое хранилище ключей, связанных с определенной службой |
Computer | HKEY_LOCAL_MACHINE SOFTWAREPoliciesMicrosoftSystemCertificates |
Физическое хранилище открытых ключей для всей машины, установленных объектами групповой политики. |
Computer | HKEY_LOCAL_MACHINE SOFTWAREMicrosoftEnterpriseCertificates |
Физическое хранилище общедоступных ключей, установленных корпоративными контейнерами PKI в домене AD |
Контекст | Расположение файла | Объяснение |
---|---|---|
User | $env:APPDATAMicrosoftSystemCertificates | Физическое хранилище для пользовательских открытых ключей и указателей на закрытые ключи |
User | $env:APPDATAMicrosoftCrypto | Физическое хранилище для контейнеров закрытых ключей для конкретных пользователей |
Computer | $env:ProgramDataMicrosoftCrypto | Физическое хранилище для контейнеров закрытых ключей для всей машины |
Предварительные требования
В оставшейся части этой статьи вы найдете несколько примеров, демонстрирующих взаимодействие с хранилищами сертификатов Windows. Чтобы воспроизвести эти примеры, убедитесь, что выполняются следующие требования:
- Windows Vista, Windows Server 2008 или более новая операционная система. В показанных примерах используется Windows 10 Корпоративная версии 1903.
- Знакомство с PowerShell. Хотя это и не обязательно, этот язык будет использоваться для ссылки на сертификаты, где это необходимо. Все показанные примеры были созданы с помощью Windows PowerShell 5.1.
- Вам не потребуется устанавливать какие-либо специальные сертификаты, но использование самозаверяющего сертификата полезно.
Управление сертификатами в Windows
В Windows есть три основных способа управления сертификатами:
- Оснастка консоли управления Microsoft (MMC) сертификатов (certmgr.msc)
- PowerShell
- Инструмент командной строки certutil
В этой статье вы узнаете, как управлять сертификатами с помощью оснастки Certificates MMC и PowerShell. Если вы хотите узнать больше о том, как использовать certutil, ознакомьтесь с документацией Microsoft.
PowerShell против диспетчера сертификатов Windows
Поскольку в Windows можно управлять сертификатами несколькими способами, встаёт вопрос выбора, что лучше использовать — GUI (MMC) или командную строку с PowerShell.
Во-первых, рассмотрим жизненный цикл сертификата. Если вы собираетесь установить или удалить один сертификат только один раз, рассмотрите возможность использования MMC. Но если вы управляете несколькими сертификатами или выполняете одну и ту же задачу снова и снова, использование командной строки может оказаться правильным решением. Даже если вы не умеете писать сценарии PowerShell, вам стоит этому научиться, если у вас есть много разных сертификатов, которыми нужно управлять.
Давайте сначала посмотрим, как обнаружить сертификаты, установленные в Windows, с помощью диспетчера сертификатов и PowerShell.
Использование диспетчера сертификатов Windows (certmgr.msc)
Чтобы просмотреть сертификаты с помощью MMC, откройте Диспетчер сертификатов: откройте меню «Пуск» и введите certmgr.msc. Это вызовет Windows Certificates MMC. Это начальное представление предоставит обзор всех логических хранилищ, отображаемых в левом окне.
На снимке экрана ниже видно, что выбрано логическое хранилище доверенных корневых центров сертификации
Просмотр физических хранилищ
По умолчанию Диспетчер сертификатов Windows не отображает физические хранилища. Чтобы показать их, в верхнем меню оснастки выбирайте «View» > «Options«. Затем вы увидите варианты отображения физических хранилищ сертификатов. Включение этого параметра упрощает определение конкретных путей в Windows.
Теперь вы можете видеть, что дополнительные контейнеры показаны в примере логического хранилища доверенных корневых центров сертификации, показанном ранее. Сертификаты по-прежнему сгруппированы относительно их логических хранилищ, но теперь вы можете увидеть физическое хранилище «Реестр».
Проверка атрибутов в диспетчере сертификатов Windows
Есть много атрибутов сертификата, которые вы можете увидеть при просмотре их с помощью MMC. Например, вы, вероятно, захотите выбрать определенные сертификаты по их атрибутам. Самый простой способ сделать это — указать Serial Number сертификата или значение Thumbprint. Если сертификат был подписан центром сертификации (CA), при выдаче он будет иметь серийный номер. Thumbprint вычисляется каждый раз при просмотре сертификата.
Вы можете увидеть некоторые атрибуты сертификата, открыв его в MMC, как показано ниже.
Следует отметить одну важную особенность — встроенные закрытые ключи. Сертификаты в Windows также могут иметь соответствующий закрытый ключ. Эти закрытые ключи хранятся в соответствующих физических хранилищах в виде зашифрованных файлов.
Чтобы быстро отличать сертификаты с соответствующим закрытым ключом и без него, посмотрите на значок сертификата. В Диспетчере сертификатов Windows, если значок просто выглядит как лист бумаги с лентой, соответствующий закрытый ключ отсутствует. Если у сертификата есть закрытый ключ, вы увидите ключ на значке MMC, и ключ в нижней части вкладки «Общие» при открытии сертификата
Использование PowerShell по физическому хранилищу
Как и в случае с MMC, вы можете просматривать сертификаты и управлять ими с помощью PowerShell. Давайте сначала проверим сертификаты в их физических хранилищах (реестр и файловая система).
Используя PowerShell командлет Get-ChildItem, вы можете перечислить все ключи и значения внутри родительского пути в реестре. Приведенная ниже команда перечислит все сертификаты вошедшего в систему пользователя в логическом хранилище промежуточных центров сертификации.
Get-ChildItem -Path 'HKCU:SoftwareMicrosoftSystemCertificatesCACertificates'
Каждая запись в кусте реестра, который вы видите, будет соответствовать отпечатку сертификата доверенного центра сертификации и его сертификату в соответствующем свойстве. Вы можете увидеть пример вывода ниже.
Другое распространенное хранилище — это Personal store. Ваши сертификаты для этого хранилища находятся в файловой системе, а не в реестре. В следующих командах мы покажем эти различные физические пути и их цели.
Каждый файл в каталоге, возвращенный приведенной ниже командой, соответствует сертификату, установленному в личном хранилище текущего пользователя.
Get-ChildItem -Path $env:APPDATAMicrosoftSystemCertificatesMyCertificates
Каждый файл, возвращаемый в приведенной ниже команде, является ссылкой на объект для закрытого ключа, созданный поставщиком хранилища ключей (KSP). Имя файла соответствует идентификатору ключа субъекта сертификата. К каждому устанавливаемому вами закрытому ключу будет добавлен соответствующий файл.
Get-ChildItem -Path $env:APPDATAMicrosoftSystemCertificatesMyKeys
Каждый файл в каталоге, возвращаемый следующей командой, является уникальным контейнером для зашифрованного закрытого ключа, созданного KSP. Нет прямой связи между именем файла и сертификатом, но файл является целью указателя в предыдущей команде.
Get-ChildItem -Path $env:APPDATAMicrosoftCryptoKeys
Использование PowerShell по логическому хранилищу
Поскольку работа с сертификатами на их физических путях встречается редко, в остальных примерах вы будете работать с логическими хранилищами.
PowerShell может получить доступ к логическим хранилищам Windows с помощью PSDrive-объекта «Cert:«, который сопоставляет сертификаты с физическими хранилищами так же, как это делает MMC.
К сожалению, MMC и «Cert:» не маркируют логические хранилища одинаково. Ниже вы можете увидеть сравнительную таблицу общих хранилищ и их названий как в MMC, так и в «Cert:» PSDrive.
Cert: | Certificates MMC |
---|---|
My | Personal |
Remote Desktop | Remote Desktop |
Root | Trusted Root Certification Authorities |
CA | Intermediate Certification Authorities |
AuthRoot | Third-Party Root Certification Authorities |
TrustedPublisher | Trusted Publishers |
Trust | Enterprise Trust |
UserDS | Active Directory User Object |
Выбор сертификатов
Когда вы работаете с сертификатами, вам понадобится способ фильтрации и выбора сертификатов для выполнения определенных операций. В большинстве случаев вы будете фильтровать и выбирать сертификаты на основе значения определенного расширения.
Для следующих примеров вам нужно начать с перечисления всех установленных сертификатов в хранилище корневого ЦС.
Get-ChildItem -Path 'Cert:CurrentUserRoot'
Возвращенные объекты будут объектами сертификатов, которые вы можете использовать в следующих примерах.
Общие расширения уже доступны как свойства объектов сертификата. В приведенном ниже примере вы используете Get-Member для вывода списка всех свойств возвращаемых объектов.
Get-ChildItem -Path 'Cert:CurrentUserRoot' | Get-Member -MemberType Properties
Как видим, некоторые из этих расширений, например «Issuer», помогают найти сертификат, который вы ищете. Расширения предоставляют информацию о сертификате, например, кому он выдан, для чего его можно использовать и любые ограничения на него.
В более сложных случаях использования вам может понадобиться найти сертификаты других расширений, таких как используемый шаблон сертификата. Сложность в том, что значения этих расширений возвращаются как массив целых чисел. Эти целые числа соответствуют содержимому в кодировке ASN.1.
Покажем пример взаимодействия с свойствами типа ScriptProperty. В приведенной ниже команде вы извлекаете Key Usages.
((Get-ChildItem -Path 'Cert:CurrentUserRoot' | Select -First 1).Extensions | Where-Object {$_.Oid.FriendlyName -eq 'Key Usage'}).format($true)
Новая часть, которую мы вводим в приведенной выше команде, — это метод форматирования, который выполняет декодирование ASN.1. Вы передаете ему логическое значение (например, $true), чтобы определить, хотим ли мы, чтобы возвращаемый объект был однострочным или многострочным.
Попробуем использовать значение Thumbprint из сертификата в приведенной ниже команде. Значение Thumbprint устанавливается как переменная PowerShell и используется для выбора конкретного сертификата в приведенных ниже командах.
$thumb = "cdd4eeae6000ac7f40c3802c171e30148030c072"
Get-ChildItem -Path 'Cert:CurrentUserRoot' | Where-Object {$_.Thumbprint -eq $thumb}
Создание самозаверяющих (self-signed) сертификатов с помощью PowerShell
PowerShell может создавать самозаверяющие (self-signed) сертификаты с помощью командлета New-SelfSignedCertificate. Самозаверяющие сертификаты полезны для тестирования, поскольку они позволяют генерировать пару открытого и закрытого ключей без использования центра сертификации.
Теперь давайте создадим самозаверяющий сертификат в хранилищах текущего пользователя и локального компьютера, чтобы использовать его в примерах для следующих шагов.
В приведенном ниже примере PowerShell создает пару открытого и закрытого ключей, самозаверяющий сертификат и устанавливает их все в соответствующие хранилища сертификатов.
New-SelfSignedCertificate -Subject 'User-Test' -CertStoreLocation 'Cert:CurrentUserMy'
New-SelfSignedCertificate -Subject 'Computer-Test' -CertStoreLocation 'Cert:LocalMachineMy'
Использование самозаверяющих сертификатов для продуктивных сервисов не рекомендуется, поскольку не существует всех механизмов, основанных на доверии.
Импорт и экспорт сертификатов в MMC
Криптография с открытым ключом основана на широкой доступности открытого ключа. Учитывая это, вам нужны стандартные способы эффективного обмена сертификатами. Не менее важна безопасность ваших личных ключей. Хранение закрытых ключей на недоступных носителях или с материалами для аварийного восстановления — обычная практика для определенных закрытых ключей.
Оба они требуют способов хранения этих криптографических объектов в стандартных форматах. Экспорт предоставляет функции для сохранения этих объектов и обеспечения использования широко распространенных стандартных форматов файлов. Импорт позволяет вам переносить криптографические объекты в операционные системы Windows.
Экспорт сертификатов из MMC относительно прост. Чтобы экспортировать сертификат без закрытого ключа, щелкните сертификат в MMC, выберите меню «Все задачи», а затем «Экспорт».
Во время экспорта вам будет предложено указать формат файла, как показано ниже. Наиболее распространены варианты кодирования — DER или Base-64
Экспорт закрытых ключей
Чтобы экспортировать сертификат с соответствующим закрытым ключом, вы должны соответствовать двум критериям:
- Вошедшая в систему учетная запись должна иметь разрешение на закрытый ключ (только для сертификатов компьютеров);
- Закрытый ключ должен быть помечен как экспортируемый.
Чтобы проверить разрешения для закрытых ключей локального компьютера, вы можете выбрать сертификат с закрытым ключом, выбрать «Все задачи» и «Управление закрытыми ключами» в MMC «Сертификаты». В открывшемся диалоговом окне отображаются записи управления доступом для закрытых ключей.
Когда выше обозначенные условия выполнены, вы можете выбрать сертификат, щелкнуть «Все задачи», а затем «Экспорт», как если бы вы использовали сертификат только с открытым ключом. При экспорте теперь у вас должна присутствовать возможность выбора экспорта закрытого ключа («Yes, export the private key»), как показано ниже.
Когда вы экспортируете закрытый ключ в Windows, вы можете сохранить файл только как PFX. Этот и другие типы файлов и форматы кодирования подробно описаны в этом посте.
Для остальных параметров, отображаемых в мастере экспорта, вы можете использовать значения по умолчанию. В таблице ниже приводится краткое изложение каждого из них.
Настройка | Описание |
---|---|
Including all certificates in the certification path if possible | Помогает с переносимостью эмитентов сертификатов и включает все соответствующие открытые ключи в PFX. |
Delete the private key if the export is successful | Удаляет закрытый ключ из файла и имеет несколько распространенных вариантов использования, но одним из примеров является проверка доступа к закрытым ключам. |
Export all extended properties | Будет включать любые расширения в текущем сертификате, они относятся к сертификатам [конкретные настройки] для интерфейсов Windows. |
Enable certificate privacy | Обычно в экспортируемом PFX-файле шифруется только закрытый ключ, этот параметр шифрует все содержимое PFX-файла. |
Group or user names | Вы можете использовать участника безопасности группы или пользователя из Active Directory для шифрования содержимого файла PFX, но пароль является наиболее переносимым вариантом для устаревших систем или компьютеров, не присоединенных к тому же домену. |
Импорт сертификатов
Функция импорта одинакова для всех поддерживаемых типов файлов сертификатов. Единственная разница в том, что если файл содержит закрытый ключ, вы можете «Отметить этот ключ как экспортируемый», о чем вы узнаете подробнее ниже. Windows будет использовать мастер импорта сертификатов.
При использовании мастера импорта сертификатов для PFX вам потребуется указать пароль, используемый для шифрования закрытого ключа. Вот еще один обзор вариантов импорта.
Настройка | Описание |
---|---|
Enable strong private key protection | Требуется пароль для каждого доступа к закрытому ключу. Будьте осторожны с новыми функциями, поскольку они не будут поддерживаться во всех программах. |
Mark this key as exportable | Вы должны стараться избегать использования этого параметра в любой конечной системе, закрытые ключи следует рассматривать так же, как и хранение паролей. |
Protect private key using [virtualization-based security] | Этот параметр обеспечивает дополнительные функции безопасности для защиты закрытых ключей от сложных атак вредоносного ПО. |
Include all extended properties | Относится к тем же настройкам Windows, что и при экспорте. |
Сертификаты для подписи кода PowerShell — хороший вариант использования надежной защиты закрытого ключа.
С автоматическим размещением сертификатов следует проявлять осторожность. Скорее всего, вы получите наилучшие результаты, выбрав хранилище сертификатов вручную.
Импорт и экспорт сертификатов в PowerShell
Теперь с помощью PowerShell экспортируйте один из самозаверяющих сертификатов, которые вы создали ранее. В этом примере вы выбираете сертификат в личном логическом хранилище CurrentUser, который был самозаверяющим.
$certificate = Get-Item (Get-ChildItem -Path 'Cert:CurrentUserMy' | Where-Object {$_.Subject -eq $_.Issuer}).PSPath
Теперь, когда вы выбрали сертификат, вы можете использовать команду Export-Certificate, чтобы сохранить файл в кодировке DER, используя команду ниже.
Export-Certificate -FilePath $env:USERPROFILEDesktopcertificate.cer -Cert $certificate
Теперь давайте посмотрим на экспорт закрытого ключа. Ниже вы проверяете, что у выбранного сертификата есть закрытый ключ. Если он не возвращает True, то команда Get-Item, скорее всего, выбрала неправильный сертификат.
$certificate.HasPrivateKey
Ниже вы установите пароль, который будет использоваться для шифрования закрытого ключа. Затем экспортируйте выбранный сертификат в файл PFX и используйте пароль, который вы ввели ранее, чтобы зашифровать файл.
$pfxPassword = "ComplexPassword!" | ConvertTo-SecureString -AsPlainText -Force
Export-PfxCertificate -FilePath $env:USERPROFILEDesktopcertificate.pfx -Password $pfxPassword -Cert $certificate
В случае, если необходимо выполнить импорт, как и при экспорте, есть две команды. Одна команда для импорта сертификатов и одна для импорта файлов PFX.
Ниже команда Import-Certificate импортирует файл в формате DER, который вы экспортировали ранее, в личное хранилище текущего пользователя.
Import-Certificate -FilePath $env:USERPROFILEDesktopcertificate.cer -CertStoreLocation 'Cert:CurrentUserMy'
Допустим, вы тоже хотите установить закрытый ключ этого сертификата.
$pfxPassword = "ComplexPassword!" | ConvertTo-SecureString -AsPlainText -Force
Import-PfxCertificate -Exportable -Password $pfxPassword -CertStoreLocation 'Cert:CurrentUserMy' -FilePath $env:USERPROFILEDesktopcertificate.pfx
Имейте в виду, что пароль должен быть защищенной строкой. Кроме того, если вы импортируете в хранилище локального компьютера (например, «Cert:LocalMachine«), вам нужно будет запустить команду из командной строки администратора с повышенными привилегиями.
В приведенном выше примере вы также используете параметр -Exportable с командой, отмечая закрытый ключ как экспортируемый в будущем. По умолчанию (без указания этого параметра) экспорт не используется. Экспортируемые закрытые ключи – отельный аспект информационной безопасности, заслуживающий отдельного внимания.
Удаление сертификатов с помощью PowerShell
При удалении сертификатов помните, что понятие «Корзина Windows» в этом случае отсутствует. Как только вы удалите сертификат, он исчезнет! Это означает, что очень важно подтвердить, что вы удаляете правильный сертификат, путем проверки уникального идентификатора, такого как серийный номер или значение расширения Thumbprint.
Как и выше, в приведенной ниже команде мы выбираем самозаверяющий сертификат из личного хранилища текущего пользователя.
$certificate = Get-Item (Get-ChildItem -Path 'Cert:CurrentUserMy' | Where-Object {$_.Subject -eq $_.Issuer}).PSPath
Ниже вы можете увидеть свойства отпечатка, серийного номера и темы для выбранного сертификата, чтобы убедиться, что это именно тот сертификат, который вы собираетесь выбрать.
$certificate.Thumbprint
$certificate.SerialNumber
$certificate.Subject
Убедитесь, что вы выбрали правильный сертификат, который собираетесь удалить.
Приведенная ниже команда удаляет все выбранные объекты сертификата, используйте с осторожностью! Передав объект $certificate через конвейер в командлет Remove-Item в приведенной ниже команде, вы удалите все содержимое сертификата без каких-либо запросов на проверку.
$certificate | Remove-Item
Резюме
На протяжении всей этой статьи вы работали с сертификатами в Windows, изучая, как получить к ним доступ, и некоторые инструменты, которые можно использовать при работе с ними. По этой теме можно изучить гораздо больше, в том числе о том, как связать установленные сертификаты с конкретными службами или даже о том, как реализовать инфраструктуру закрытого открытого ключа (PKI) путем развертывания собственных центров сертификации (CA).
Обновлено 24.11.2016
Добрый день уважаемые читатели блога Pyatilistnik.org, меня уже на протяжении этого месяца, несколько раз спрашивали в электронной почте, где хранятся сертификаты в windows системах, ниже я подробнейшим образом вам расскажу про этот вопрос, рассмотрим структуру хранилища, как находить сертификаты и где вы это можете использовать на практике, особенно это интересно будет для тех людей, кто часто пользуется ЭЦП (электронно цифровой подписью)
Для чего знать где хранятся сертификаты в windows
Давайте я вам приведу основные причины, по которым вы захотите обладать этим знанием:
- Вам необходимо посмотреть или установить корневой сертификат
- Вам необходимо посмотреть или установить личный сертификат
- Любознательность
Ранее я вам рассказывал какие бывают сертификаты и где вы их можете получить и применять, советую ознакомиться с данной статьей, так как информация изложенная в ней является фундаментальной в этой теме.
Во всех операционных системах начиная с Windows Vista и вплоть до Windows 10 Redstone 2 сертификаты хранятся в одном месте, неком таком контейнере, который разбит на две части, один для пользователя, а второй для компьютера.
В большинстве случаев в Windows поменять те или иные настройки вы можете через mmc оснастки, и хранилище сертификатов не исключение. И так нажимаем комбинацию клавиш WIN+R и в открывшемся окне выполнить, пишем mmc.
Вы конечно можете ввести команду certmgr.msc, но таким образом вы сможете открыть только личные сертификаты
Теперь в пустой mmc оснастке, вы нажимаете меню Файл и выбираете Добавить или удалить оснастку (сочетание клавиш CTRL+M)
В окне Добавление и удаление оснасток, в поле Доступные оснастки ищем Сертификаты и жмем кнопку Добавить.
Тут в диспетчере сертификатов, вы можете добавить оснастки для:
- моей учетной записи пользователя
- учетной записи службы
- учетной записи компьютера
Я обычно добавляю для учетной записи пользователя
и компьютера
У компьютера есть еще дополнительные настройки, это либо локальный компьютер либо удаленный (в сети), выбираем текущий и жмем готово.
В итоге у меня получилось вот такая картина.
Сразу сохраним созданную оснастку, чтобы в следующий раз не делать эти шаги. Идем в меню Файл > Сохранить как.
Задаем место сохранения и все.
Как вы видите консоль хранилище сертификатов, я в своем примере вам показываю на Windows 10 Redstone, уверяю вас интерфейс окна везде одинаковый. Как я ранее писал тут две области Сертификаты — текущий пользователь и Сертификаты (локальный компьютер)
Сертификаты — текущий пользователь
Данная область содержит вот такие папки:
- Личное > сюда попадают личные сертификаты (открытые или закрытые ключи), которые вы устанавливаете с различных рутокенов или etoken
- Доверительные корневые центры сертификации > это сертификаты центров сертификации, доверяя им вы автоматически доверяете всем выпущенным ими сертификатам, нужны для автоматической проверки большинства сертификатов в мире. Данный список используется при цепочках построения доверительных отношений между CA, обновляется он в месте с обновлениями Windows.
- Доверительные отношения в предприятии
- Промежуточные центры сертификации
- Объект пользователя Active Directory
- Доверительные издатели
- Сертификаты, к которым нет доверия
- Сторонние корневые центры сертификации
- Доверенные лица
- Поставщики сертификатов проверки подлинности клиентов
- Local NonRemovable Certificates
- Доверительные корневые сертификаты смарт-карты
В папке личное, по умолчанию сертификатов нет, если вы только их не установили. Установка может быть как с токена или путем запроса или импорта сертификата.
В мастере импортирования вы жмете далее.
далее у вас должен быть сертификат в формате:
- PKCS # 12 (.PFX, .P12)
- Стандарт Cryprograhic Message Syntax — сертификаты PKCS #7 (.p7b)
- Хранилище сериализованных сертификатов (.SST)
На вкладке доверенные центры сертификации, вы увидите внушительный список корневых сертификатов крупнейших издателей, благодаря им ваш браузер доверяет большинству сертификатов на сайтах, так как если вы доверяете корневому, значит и всем кому она выдал.
Двойным щелчком вы можете посмотреть состав сертификата.
Из действий вы их можете только экспортировать, чтобы потом переустановить на другом компьютере.
Экспорт идет в самые распространенные форматы.
Еще интересным будет список сертификатов, которые уже отозвали или они просочились.
Список пунктов у сертификатов для компьютера, слегка отличается и имеет вот такие дополнительные пункты:
- AAD Token Issue
- Windows Live ID Token
- Доверенные устройства
- Homegroup Machine Certificates
Думаю у вас теперь не встанет вопрос, где хранятся сертификаты в windows и вы легко сможете найти и корневые сертификаты и открытые ключи.
When adding certificates, stls, ctls and crls to the system, I can choose the certificate store.
I have found only references to the «my» and «root» stores so far.
Are there any other?
asked Dec 2, 2010 at 19:52
Jader DiasJader Dias
15.5k59 gold badges142 silver badges195 bronze badges
1
There are three types of certificate stores in Windows.
- User Account store
- Service Account store
- Local Computer store
Each of the three stores contain a number of folders which certificates go into
- Personal (can be known as My when using scripts to add certs)
- Trusted Root Certification Authority (can be known as Root)
- Enterprise Trust
- Intermediate Certification Authority
- Active Directory User Object
- Trusted Publishers
- Untrusted Certificates
- Third Party Root Certification Authorities
- Trusted People
These can be seen if you open up an mmc.exe with the Certificates snapin.
Depending on what the certificate is meant to be doing you have to work out where it would go.
Most of the time on the servers we support we use the Computer Account store (as its accessible by all users on a Computer) and put certificates in the Personal store. Some times you might need to add in the signing authority public key certs into the Root and Intermediate Root CAs.
answered Dec 16, 2010 at 12:14
5
Certificate store names are as follows (source):
- AddressBook: Certificate store for other people and resources.
- AuthRoot: Certificate store for third-party certification authorities (CAs).
- CertificationAuthority: Certificate store for intermediate certification authorities (CAs).
- Disallowed: Certificate store for certificates that have been revoked so they aren’t forgotten.
- My: Certificate store for your personal certificates that you use and is where most custom certificates.
- Root: Certificate store for certificate authorities (CA) that you trust.
- TrustedPeople: Certificate store for other people and resources that you trust.
- TrustedPublisher: Certificate store for application publishers that you trust.
answered Dec 16, 2010 at 21:05
harrymcharrymc
431k30 gold badges495 silver badges876 bronze badges
When adding certificates, stls, ctls and crls to the system, I can choose the certificate store.
I have found only references to the «my» and «root» stores so far.
Are there any other?
asked Dec 2, 2010 at 19:52
Jader DiasJader Dias
15.5k59 gold badges142 silver badges195 bronze badges
1
There are three types of certificate stores in Windows.
- User Account store
- Service Account store
- Local Computer store
Each of the three stores contain a number of folders which certificates go into
- Personal (can be known as My when using scripts to add certs)
- Trusted Root Certification Authority (can be known as Root)
- Enterprise Trust
- Intermediate Certification Authority
- Active Directory User Object
- Trusted Publishers
- Untrusted Certificates
- Third Party Root Certification Authorities
- Trusted People
These can be seen if you open up an mmc.exe with the Certificates snapin.
Depending on what the certificate is meant to be doing you have to work out where it would go.
Most of the time on the servers we support we use the Computer Account store (as its accessible by all users on a Computer) and put certificates in the Personal store. Some times you might need to add in the signing authority public key certs into the Root and Intermediate Root CAs.
answered Dec 16, 2010 at 12:14
5
Certificate store names are as follows (source):
- AddressBook: Certificate store for other people and resources.
- AuthRoot: Certificate store for third-party certification authorities (CAs).
- CertificationAuthority: Certificate store for intermediate certification authorities (CAs).
- Disallowed: Certificate store for certificates that have been revoked so they aren’t forgotten.
- My: Certificate store for your personal certificates that you use and is where most custom certificates.
- Root: Certificate store for certificate authorities (CA) that you trust.
- TrustedPeople: Certificate store for other people and resources that you trust.
- TrustedPublisher: Certificate store for application publishers that you trust.
answered Dec 16, 2010 at 21:05
harrymcharrymc
431k30 gold badges495 silver badges876 bronze badges
Рядовые пользователи с хранилищем сертификатов Windows 7 или любой другой операционной системы, относящейся к этому семейству, не сталкиваются практически никогда. Но вот системным администраторам или юзерам достаточно высокого уровня подготовки иногда бывает крайне необходимо использовать его для удаления старых документов или цифровых подписей, а также для установки новых. Зачем все это нужно и где в Windows 7 хранилище сертификатов, далее и рассмотрим. Заранее надо сказать, что обычным пользователям рассмотрение этих вопросов может понадобиться и в целях получения общей информации, и для выполнения вышеописанных действий, поскольку нельзя исключать, что они в определенной ситуации могут потребоваться.
Что такое хранилище сертификатов в операционных системах Windows?
Начнем с определения самого термина. Что представляет собой хранилище сертификатов Windows 7? По сути своей это специально отведенное место, в котором сохраняются всевозможные электронные документы, включая и цифровые подписи, но не в обычном, а в зашифрованном виде. Поскольку все объекты и в любой ОС представлены исключительно в виде файлов, это хранилище тоже можно отнести к этой категории, однако открыть его какой-то программой наподобие текстового редактора невозможно. Кроме того, само хранилище сертификатов Windows 7 разделено как бы на две части. Одна относится к зарегистрированному локальному пользователю, вторая – к компьютеру в целом. Основным же предназначением всех таких документов является обеспечение безопасности компьютерной системы, например, в плане того, чтобы в нее не проникло сомнительное, потенциально небезопасное или нежелательное программное обеспечение. Таким образом, сертификат или цифровая подпись удостоверяет подлинность и безопасность того или иного программного продукта, а в некоторых случаях может использоваться и как некий проверенный идентификатор самого пользователя.
Как открыть хранилище сертификатов Windows 7: способ первый
Что же касается доступа, во всех последних системах, начиная как раз с седьмой модификации, он может и должен производиться исключительно от имени администратора, причем, даже несмотря на то, что учетная запись суперпользователя может быть отключена. Способов осуществления доступа можно выделить три (как минимум).
Самым простым считается вызов из «Панели управления» свойств обозревателя, где на вкладке содержимого для просмотра необходимых сведений можно использовать либо кнопку сертификатов, либо кнопку отображения издателей. В первом случае обычно в списке ничего представлено не будет, поэтому нужно использовать кнопку «Дополнительно», чтобы просмотреть все доступные элементы. При просмотре издателей сразу будут показаны программные продукты, имеющие соответствующие цифровые подписи и сертификаты. Но вот неудобство такого метода доступа состоит в том, что в хранилище сертификатов Windows 7 будут показаны только те данные программ и издателей, которые в своей работе могут затребовать обращение к интернету через встроенный в систему браузер.
Доступ к сертификатам: способ второй
Для просмотра абсолютно всех сведений следует использовать специализированное средство доступа, которое вызывается из консоли «Выполнить» командой certmgr.msc, после чего запускается своеобразный менеджер.
Цифровые подписи представлены в соответствующем локальному пользователю разделе, а основной массив отображается в корневых и промежуточных центрах сертификации. Как уже, наверное, понятно, данный инструмент как раз и может выступать не только в роли средства обеспечения безопасности системы, но и сертифицировать неподписанные программные продукты.
Как удалить сертификаты из хранилища Windows 7?
Некоторые сертификаты и ЭПЦ могут устаревать. Именно поэтому их следует удалять. Естественно, без крайней необходимости рядовым пользователям заниматься такими вещами самостоятельно не нужно. Однако при выявлении конфликтов программного обеспечения иногда ничего другого просто не остается (например, если проверку подписей драйверов полностью отключить не удается). Для удаления любого компонента, представленного в менеджере, описанном для второй методики доступа, используется меню ПКМ на выбранном сертификате с последующей активацией пункта удаления.
Например, в личных сертификатах может храниться подпись Apple, хотя программное обеспечение или подключение «яблочного» девайса больше не используется. Так зачем хранить такие записи, если при повторной установке драйвера или приложения сертификат и подпись будут внесены в реестр автоматически? Очевидно, что из-за наличия таких компонентов частично как раз и засоряется системный реестр, а большинство программ-оптимизаторов такие данные не удаляют. И чем сильнее раздувается реестр, тем медленнее загружается и работает вся операционная система.
Добавление сертификата или ЭЦП
Если же речь идет о добавлении сертификатов, импорт можно выполнить при доступе к хранилищу с использованием первых двух способов. Но в случае с пользовательскими цифровыми подписями локального уровня (да еще и для установки автоматизации процесса) лучше всего воспользоваться добавлением оснастки в консоли MMC, которая вызывается из меню «Выполнить» одноименной командой.
Через файловое меню следует выбрать добавление или удаление оснастки, после этого найти пункт сертификатов в меню слева, добавить пункт в текущие оснастки нажатием кнопки правее, указать тип (для пользователя, службы или учетной записи компьютера), после чего при желании новую оснастку можно сохранить удобном месте. После вызова сохраненной настройки можно будет производить импорт сертификатов и подписей, осуществлять управление ними, изменять политики безопасности без непосредственного доступа к соответствующему разделу и т. д. без необходимости выполнения предварительных действий по добавлению оснасток в разные ветки.
Содержание
- Что такое сертификаты Windows 10
- Где хранятся сертификаты
- Просмотр сертификатов
Что такое сертификаты Windows 10
Сертификат — это зашифрованные файлы с личной информацией, посредством которых обеспечивается безопасный обмен данными в сети между сторонами, участвующими в таком обмене. Благодаря сертификатам пользователь или субъект может быть идентифицирован издателем или владельцем. По такому принципу работают сайты государственных услуг. Для подачи запроса на получение какого-либо документа нет необходимости лично ехать в госорган и предоставлять паспорт, ваша личность подтверждается с помощью цифрового сертификата.
Сертификат включает в себя поле открытый ключ владельца, в который пользователем вносятся данные и после чего передаются в зашифрованном виде. Для открытия сообщений и их расшифровки владелец использует закрытый ключ. Сертификаты выдаются центром сертификации (удостоверяющим центром) — органом или организацией которые, как правило, являются сторонними издателями сертификатов.
Где хранятся сертификаты
Для хранения сертификатов используются специальные хранилища. В системе они представлены обычно 2-мя типами:
- хранилище локального компьютера
- хранилище текущего пользователя.
Пользователь с правами администратора имеет возможность просмотра всех хранилищ. Обычные пользователи, не обладающие правами администратора, имеют доступ лишь ко второму типу.
В хранилище локального компьютера содержатся сертификаты глобальные для всех пользователей, а в хранилище текущего пользователя находятся сертификаты для конкретной учетной записи.
В свою очередь хранилища внутри разделяются на вложенные хранилища, т.е. сертификаты группируются в зависимости от назначения сертификата.
Сертификаты для текущего пользователя наследуют содержимое хранилищ с сертификатами локального компьютера.
Просмотр сертификатов
Если в работе с сертификатами перед вами встал вопрос о необходимости их просмотра, проверки каких-либо свойств или просто из любопытства ниже мы рассмотрим доступные для этих целей способы.
С помощью консоли управления
На клавиатуре наберите сочетание клавиш Win+R → в строку открыть введите «MMC» → Ok. Если на экран будет выведено окно контроля учетных записей нажмите кнопку «Да», тем самым дав разрешение на внесение изменений приложением.
После открытия консоли в меню Файл → выберите Добавить или удалить оснастку.
В открывшемся окне справа вы увидите список доступных оснасток. Выберите Сертификаты → нажмите кнопку Добавить.
Далее будет предложено выбрать какими сертификатами нужно управлять. Выберите «учетной записи компьютера» → Далее.
Если вы не являетесь администратором компьютера управление сертификатами можно будет осуществлять только для учетной записи пользователя под которой был выполнен вход в систему.
В следующем окне оставьте выбранным параметр «локальным компьютером» → нажмите кнопку Готово.
Вы вернетесь к окну Добавление и удаление оснасток, где в выбранных оснастках (слева) появятся Сертификаты (локальный компьютер) → нажмите Ok.
В Корне консоли разверните список каталогов. Все установленные сертификаты будут отсортированы по типам. Раскрыв нужный тип можно выполнить просмотр, экспорт, импорт или удаление сертификатов.
Диспетчер сертификатов
Для просмотра сертификатов пользователя можно воспользоваться командой certmgr.msc (сертификаты локального компьютера можно открыть командой certlm.msc) введя ее в диалоговое окно Выполнить. После чего будет открыт диспетчер сертификатов. Для просмотра нужного типа щелкните по сертификату в левой части окна.
Internet Explorer
Запустите браузер Internet Explorer (например, найдя его через кнопку Поиск на панели задач) → щелкните по значку в виде шестеренки Сервис (или Alt+X) → Свойства браузера.
В окне Свойств браузера перейдите ко вкладке Содержание → в разделе Сертификаты щелкните одноименную кнопку.
В открывшемся окне можно управлять установленными сертификатами (! не имея при этом прав администратора в системе). Для удобства просмотра можно отфильтровать их по назначению либо воспользоваться вкладками, группирующими сертификаты по типу.
Окно свойство браузера можно также открыть через Панель управления. Для этого откройте классическую Панель управления → Свойства браузера → Содержание → Сертификаты.
Система цифровых сертификатов используется аналогично паролям, для подтверждения личности пользователя или ПК, обмена электронной информацией в виртуальной сети. Легковесные файлы содержат личные данные, которые применяются при идентификации личности. Хранилище сертификатов в ОС Windows 10 находится в секретном месте. Иногда фирмам приходится настраивать личные сертификаты, поэтому им важно знать местоположение файлов.
Для чего знать, где хранятся сертификаты?
Каждый файл в хранилище предусмотрен для защиты операционки цифрового устройства. Они препятствуют проникновению вредоносных программ в систему. Отдельная цифровая подпись отвечает за определенный скачанный софт.
Знание о том, где хранятся такие файлы, требуется в случае просмотра или установки корневых, личных сертификатов. В «десятке» инструменты находятся в контейнере двух типов:
- Certificate store локального ПК – включают список файлов для проверки оригинальности сервера.
- Certificate store для пользователя – хранят сертификаты утилит, которые запускает юзер.
Сертификаты представляют собой корневые и личные файлы. Первые являются составным элементом секретного ключа. Вторые предназначены для идентификации юзеров при обмене электронных данных. Поменять настройки в «десятке» можно через mmc оснастки, в том числе через хранилище.
Просмотр установленных сертификатов Windows 10
Список важных объектов: сертификаты для оборудования, персональные файлы – находят несколькими способами с помощью встроенных инструментов, сторонних утилит.
Через «КриптоПро»
Криптопровайдер предназначен для организации защиты программных обеспечений методом шифрования. Менеджер защищает конфиденциальную информацию при обмене данными через сеть интернет, обеспечивает юридическую достоверность электронных документов.
Для включения программы ее требуется скачать с официального сайта разработчика, инсталлировать на компьютер. Все действия выполняются с правами Администратора. Во время установки ПО можно выполнять настройки через панель свойств. После инсталляции потребуется перезагрузить устройство.
Просмотр проверочных ключей ЭЦП происходит по следующему алгоритму:
- Зайти в меню Пуск.
- Открыть «Все программы».
- Выбрать «КриптоПро».
- Щелкнуть по пункту «Сертификаты».
В открывшемся окне пользователь увидит все актуальные корневые, личные файлы. Обладая администраторскими правами, можно управлять файлами в «десятке»: выполнять копирование, редактирование, деинсталлировать файлы.
Через Certmgr
Диспетчер разрешает проводить различные действия с цифровыми документами. Консоль является частью операционной системы, включает инструменты для функций управления.
Для просмотра данных нужно следовать инструкции:
- Зайти в Пуск.
- Открыть Командную строку, набрать: c Нажать «Enter».
- В меню появившегося окна выбрать «Личное» и «Корневые сертификаты…». Зайдя в разделы, можно развернуть реестры с полным списком ключей.
Без прав Администратора утилита не заработает. Софт имеет ограничение в шифровании данных, где происходит специальное кодирование файлов.
Через Internet Explorer
Браузер интегрирован в ОС Виндовс 10, включает набор инструментов, позволяющих искать и просматривать информацию в виртуальной сети. Если веб-проводник отсутствует в «десятке», его легко можно скачать с официального источника.
С помощью браузера можно найти ЭЦП, следуя инструкции:
- Запустить Интернет Эксплорер.
- Выбрать «Свойства браузера».
- Тапнуть по разделу «Содержание».
- Нажать на подраздел «Сертификаты».
В результате откроется содержимое с полным списком искомых файлов. В веб-сервисе существует возможность их добавления. Юзеру стоит помнить, что корневые ЭЦП удостоверяющих центров деактивировать запрещено.
Аналогичный способ поиска документов выполняется через Центр управления сетями или общим доступом:
- Открыть Панель управления.
- Войти в «Свойства браузера».
- Зайти в меню «Содержание» и «Сертификаты».
Преимущество метода заключается в том, что посмотреть список ЭЦП можно без администраторских прав. Для обычных людей доступен только просмотр, вносить изменения запрещено.
Через контроль управления
Представляет собой один из важнейших компонентов ОС Виндовс 10. С помощью встроенного средства осуществляется управление, запуск, настройка большинства системных функций. Также можно найти, где лежат сертифицированные файлы ЭЦП для их редактирования.
Пошаговая инструкция:
- Нажать: «Win + R».
- Ввести в строку запроса: cmd. Нажать «Enter».
- после этого перейти по команде mmc в терминал;
- Щелкнуть по вкладке «Файл».
- В открывшемся списке тапнуть «Добавить изолированную оснастку».
- Нажать на раздел «Сертификаты».
Все действия пользователь может выполнять только с правами Администратора. Такой вариант подходит не каждому человеку, так как некоторые запросы вводятся через Командную строку. Сервисом обычно пользуются системные администраторы или люди, хорошо разбирающиеся в теме.
Существует целый список сторонних ресурсов, позволяющих управлять сертификатами, инсталлированными в ОС Виндовс 10. Но пользоваться такими утилитами не рекомендуется, так как нет гарантии, что в них присутствует команда отправки сертификата на внешний сервер. Надежное сертифицированное приложение – это «КриптоПро», которое дает гарантию защиты от несанкционированного доступа посторонних лиц к ЭЦП.
Также в последних версиях Винды зашифрованные файлы просматривают, перейдя по пути: C:UsersПОЛЬЗОВАТЕЛЬAppDataRoamingMicrosoftSystemCertificates. Словосочетание «Пользователь» меняется на название учетной записи. В результате откроется полный список засекреченных данных.
Сертификаты созданы для безопасной работы цифровой техники. Их достоверность гарантирована сертификационным центром. Управление ЭЦП требует определенных знаний, поэтому работу должен выполнять специалист или продвинутый пользователь.