Posts on this page:
В заключительной части этой беседы мы поговорим об удалении и создании конфигураций отзыва для Online Responder.
Если так случилось, что вам какая-то конфигурация надоела или показалась скучной, вы её можете удалить. Удаляются они при помощи метода DeleteCAConfiguration:
PS C:\> $OCSPAdmin = New-Object -ComObject CertAdm.OCSPAdmin PS C:\> $OCSPAdmin.GetConfiguration("dc2",$true) PS C:\> $OCSPAdmin.OCSPCAConfigurationCollection | %{$_.Identifier} ocsp PS C:\> $OCSPAdmin.OCSPCAConfigurationCollection.DeleteCAConfiguration("ocsp") PS C:\> $OCSPAdmin.SetConfiguration("dc2",$true) PS C:\>
В качестве аргумента указываем название конфигурации (свойство Identifier). И ещё раз напоминаю, что любые изменения необходимо завершать вызовом метода SetConfiguration.
В первой части нашей темы я сделал лёгкий вброс по основным интерфейсам COM, при помощи которых мы можем управлять службой Online Responder. Сегодня мы более плотно посмотрим уже сами конфигурации. Они хранятся в свойстве OCSPCAConfigurationCollection:
А знаете ли вы, что сервером OCSP (Online Responder) можно легко (ну это я приукрасил) управлять прямиком из PowerShell? Если знаете, можете дальше не читать. А если не знаете, тогда тоже можете не читать, потому что вряд ли это так уж интересно.
Пкитим реализовал несколько COM интерфейсов (по правде говоря, они кроме COM'ов ничего не умеют) для управления Online Responder. Основных интерфейсов 2:
IOCSPAdmin используется для управления самой фермой респондеров и для управления конфигурациями отзыва на отдельно взятом сервере из фермы. Объект создаётся следующим образом:
Я вчера в статье Certificate Trust List (CTL) в PowerShell показал основные принципы, как работать с CTL в PowerShell. Сегодня я продолжу тему и покажу, как можно вытащить доверенные корневые сертификаты из ресурсов Crypt32.dll и из интернетов. Но для начала, Crypt32.dll
Вот как они выглядят в каком-нибудь редакторе ресурсов:
Как вы знаете, .NET не имеет нативной поддержки для X.509 CRL и X.509 CTL (или STL — Security Trust List). Именно поэтому я в своё время написал свой прототип для объекта X509CRL2. Недавно мне потребовалось получить доступ к CTL из PowerShell.
Во-первых, что такое CTL? Это просто список данных (например, хешей сертификатов), который подписан доверенной стороной. Где они применяются? Например, в Microsoft Root Certificate Program, в которой участвуют различные коммерческие и государственные центры сертификации. Эти CA доверены в Windows по умолчанию. Сами сертификаты хранятся в нескольких местах: