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


Как извлечь отпечаток сертификата

При написании приложения Windows Communication Foundation (WCF), использующего для проверки подлинности сертификат X.509, часто возникает необходимость задать утверждения из сертификата Например, при использовании перечисления FindByThumbprint в методе SetCertificate необходимо указать утверждение отпечатка. Чтобы найти значение утверждения, необходимо выполнить два действия. Сначала необходимо открыть оснастку сертификатов консоли управления (MMC). (См. раздел Как просматривать сертификаты с помощью оснастки консоли MMC.) После этого, как описано в этом разделе, необходимо найти соответствующий сертификат и скопировать его отпечаток (или другие значения утверждений).

Если сертификат используется для проверки подлинности службы, важно запомнить значение столбца Кому выдан (первый столбец консоли). При использовании для защиты транспорта протокола SSL одним из первых шагов является сравнение базового адреса универсального кода ресурса (URI) службы со значением поля Кому выдан. Значения должны совпадать, в противном случае процесс проверки подлинности будет прерван.

Кроме того, можно с помощью средства Makecert.exe из пакета SDK для .NET Framework создать временные сертификаты для использования только на этапе разработки. Однако по умолчанию такой сертификат не выдается центром сертификации и не может использоваться в рабочей среде. Дополнительные сведения см. в разделе Как создать временные сертификаты для использования во время разработки.

Извлечение отпечатка сертификата

  1. Откройте оснастку "Сертификаты" консоли управления (MMC). (См. раздел Как просматривать сертификаты с помощью оснастки консоли MMC.)

  2. В левой области окна Корень консоли щелкните узел Сертификаты (локальный компьютер).

  3. Щелкните папку Личные, чтобы развернуть ее.

  4. Щелкните папку Сертификаты, чтобы развернуть ее.

  5. В списке сертификатов найдите заголовок Назначения. Найдите сертификат, назначением которого является Проверка подлинности клиента.

  6. Дважды щелкните сертификат.

  7. В диалоговом окне Сертификат перейдите на вкладку Состав.

  8. Найдите в списке поле Отпечаток и щелкните его.

  9. Скопируйте шестнадцатеричные значения из текстового поля. Если этот отпечаток используется в коде X509FindType, удалите пробелы между шестнадцатеричными значениями. Например, отпечаток "a9 09 50 2d d8 2a e4 14 33 e6 f8 38 86 b0 0d 42 77 a3 2a 7b" необходимо задавать в коде в виде "a909502dd82ae41433e6f83886b00d4277a32a7b".

См. также

Задачи

Как настраивать порт с использованием SSL-сертификата
Как просматривать сертификаты с помощью оснастки консоли MMC
Как создать временные сертификаты для использования во время разработки

Справочник

FindByThumbprint
SetCertificate