Метод ICertAdmin2::GetCAProperty (certadm.h)
Метод GetCAProperty извлекает значение свойства для центра сертификации (ЦС). Этот метод был впервые определен в интерфейсе ICertAdmin .
Синтаксис
HRESULT GetCAProperty(
[in] const BSTR strConfig,
[in] LONG PropId,
[in] LONG PropIndex,
[in] LONG PropType,
[in] LONG Flags,
[out] VARIANT *pvarPropertyValue
);
Параметры
[in] strConfig
Представляет допустимую строку конфигурации для ЦС в формате COMPUTERNAME\CANAME, где COMPUTERNAME — сетевое имя сервера служб сертификации, а CANAME — общее имя ЦС, указанное при настройке служб сертификации. Дополнительные сведения об имени строки конфигурации см. в разделе ICertConfig.
[in] PropId
Указывает один из следующих идентификаторов свойств.
Значение | Значение |
---|---|
|
Тип данных свойства: Long Указывает, работает ли В ЦС расширенный сервер. |
|
Тип данных свойства: Binary, indexed Полный или базовый список отзыва сертификатов ЦС (CRL). |
|
Тип данных свойства: Long, индексированные Базовое состояние публикации списка отзыва сертификатов. Дополнительные сведения см. в разделе Комментарии. |
|
Тип данных свойства: Binary, indexed Обратный перекрестный сертификат. Обратный перекрестный сертификат — это сертификат, выданный при продлении из ЦС на себя, подписанный с помощью нового ключа ЦС. Обратный перекрестный сертификат имеет идентификатор ключа центра нового сертификата ЦС и идентификатор ключа субъекта старого сертификата ЦС. Применяется только к корневым ЦС. |
|
Тип данных свойства: Long, индексированные Является ли обратный перекрестный сертификат допустимым. Допустимо только для корневых ЦС. |
|
Тип данных свойства: Long Состояние сертификата ЦС. Допустимые значения:
|
|
Тип данных свойства: Long, индексированные Состояние сертификата ЦС как HRESULT. |
|
Тип данных свойства: Long, индексированные Версия сертификата ЦС в виде DWORD. Слово высокого порядка — это ключевой индекс, а слово низкого порядка — индекс сертификата ЦС. |
|
Тип данных свойства: Binary, indexed Перекрестный сертификат пересылки. Переадресация перекрестного сертификата — это сертификат, выданный после продления из ЦС на сам, подписанный предыдущим ключом ЦС. Перекрестный сертификат имеет идентификатор ключа центра предыдущего сертификата ЦС и идентификатор ключа субъекта нового сертификата ЦС. Применяется только к корневым ЦС. |
|
Тип данных свойства: Long, индексированные Указывает, действителен ли перекрестный сертификат. Допустимо только для корневых ЦС. |
|
Тип данных свойства: String Имя ЦС. |
|
Тип данных свойства: Binary, indexed Сертификат подписи ЦС. |
|
Тип данных свойства: Binary, indexed Цепочка сертификатов подписи ЦС. |
|
Тип данных свойства: Long Количество сертификатов подписи для ЦС. |
|
Тип данных свойства: Binary, indexed Цепочка отзыва сертификатов для подписи ЦС. |
|
Тип данных свойства: Long Тип ЦС. Это может быть одно из следующих значений (определенное в Certsrv.h):
|
|
Тип данных свойства: Binary, indexed Сертификат ЦС для обмена. |
|
Тип данных свойства: Binary, indexed Цепочка сертификатов обмена ЦС. |
|
Тип данных свойства: Long Количество сертификатов exchange для ЦС. |
|
Тип данных свойства: Binary, indexed Цепочка сертификатов сертификатов exchange ЦС. |
|
Тип данных свойства: String, indexed Указывает URL-адреса доступа к данным центра в качестве типа URL-адреса, запрашиваемого клиентом. Windows Server 2003: Этот флаг не поддерживается. |
|
Тип данных свойства: String, indexed Указывает URL-адреса точек распространения списка отзыва сертификатов в качестве типа URL-адреса, запрашиваемого клиентом. Windows Server 2003: Этот флаг не поддерживается. |
|
Тип данных свойства: Long Состояние списка отзыва сертификатов ЦС. Допустимые значения:
|
|
Тип данных свойства: Binary, indexed Разностный список отзыва сертификатов ЦС. |
|
Тип данных свойства: Long, индексированные Разностное состояние публикации списка отзыва сертификатов. Дополнительные сведения см. в разделе Комментарии. |
|
Тип данных свойства: String DNS-имя ЦС. |
|
Тип данных свойства: Long Количество модулей выхода, используемых ЦС. |
|
Тип данных свойства: String Описание модуля выхода. |
|
Тип данных свойства: String Версия файла служб сертификатов. |
|
Тип данных свойства: Binary, indexed Сертификат агента восстановления ключей (KRA) ЦС. |
|
Тип данных свойства: Long Количество сертификатов KRA для ЦС. |
|
Тип данных свойства: Long, индексированные Состояние сертификата KRA. Возвращается одно из следующих значений:
|
|
Тип данных свойства: Long Количество сертификатов KRA, используемых ЦС. |
|
Тип данных свойства: String Имя родительского ЦС ЦС. |
|
Тип данных свойства: String Описание модуля политики. |
|
Тип данных свойства: String Версия продукта, в которой был отправлен файл. |
|
Тип данных свойства: Long Значение, указывающее, включено ли разделение ролей. |
|
Тип данных свойства: String Дезинфицированное имя ЦС. Определение дезинфицированного имени ЦС см. в разделе ICertConfig2::GetConfig. |
|
Тип данных свойства: String Санизированное короткое имя ЦС. Определение короткого имени санированного ЦС см. в разделе ICertConfig2::GetConfig. |
|
Тип данных свойства: String Имя каталога общей папки. |
|
Тип данных свойства: String Список шаблонов, поддерживаемых центром сертификации. |
[in] PropIndex
Если параметр PropId индексируется, индекс отсчитывается от нуля, используемый при извлечении значения свойства. Если PropId не индексируется, это значение игнорируется.
[in] PropType
Указывает тип свойства, указанного в столбце Значение таблицы PropId . Тип может быть одним из следующих типов.
Значение | Значение |
---|---|
|
Подписанные длинные данные |
|
Дата и время (зарезервировано для использования в будущем) |
|
Двоичные данные |
|
Строковые данные Юникода |
[in] Flags
Следующие флаги можно использовать для указания формата возвращаемого значения свойства. Эти флаги имеют значение только для двоичных данных (таких как сертификаты, цепочки сертификатов или списки отзыва сертификатов) и игнорируются в противном случае.
[out] pvarPropertyValue
Указатель на буфер, получающий запрошенное значение свойства. Вызывающий объект несет ответственность за освобождение этого ресурса, когда это делается путем вызова VariantClear.
Возвращаемое значение
C++
Возвращаемое значение — HRESULT. Значение S_OK указывает, что метод был успешным.VB
Запрашиваемое значение свойства.Комментарии
Следующие значения возвращаются, если идентификатор свойства CR_PROP_BASECRLPUBLISHSTATUS или CR_PROP_DELTACRLPUBLISHSTATUS. Эти значения можно объединять.
Значение | Описание |
---|---|
CPF_BADURL_ERROR | Недопустимый URL-адрес. |
CPF_BASE | Был опубликован базовый список отзыва сертификатов. |
CPF_CASTORE_ERROR | Ошибка хранилища ЦС предотвратила публикацию. |
CPF_COMPLETE | Опубликован полный список отзыва сертификатов. |
CPF_DELTA | Опубликован разностный список отзыва сертификатов. |
CPF_FILE_ERROR | Ошибка файла предотвратила публикацию. |
CPF_FTP_ERROR | Ошибка FTP предотвратила публикацию. |
CPF_HTTP_ERROR | Ошибка HTTP предотвратила публикацию. |
CPF_LDAP_ERROR | Ошибка LDAP предотвратила публикацию. |
CPF_MANUAL | Список отзыва сертификатов был опубликован вручную. |
CPF_SHADOW | Был опубликован пустой разностный список отзыва сертификатов, а также новый список отзыва сертификатов BASE. |
CPF_SIGNATURE_ERROR | Ошибка сигнатуры помешала публикации. |
Пример получения списка отзыва сертификатов см. в разделе Получение списка отзыва сертификатов.
Примеры
В следующем примере показано получение сертификата подписи ЦС. В примере предполагается, что указатель интерфейса ICertAdmin2 является допустимым.
BSTR bstrCA = NULL;
VARIANT var1;
HRESULT hr;
bstrCA = SysAllocString(L"<COMPUTERNAMEHERE>\\<CANAMEHERE>");
if (NULL == bstrCA)
{
printf("Failed to allocate memory for bstrCA\n");
exit(1);
}
VariantInit(&var1);
// Retrieve the CA signature certificate at index 0.
hr = pAdmin2->GetCAProperty(bstrCA,
CR_PROP_CASIGCERT,
0,
PROPTYPE_BINARY,
CV_OUT_BASE64HEADER,
&var1);
if (FAILED(hr))
{
printf("Failed GetCAProperty\n");
SysFreeString(bstrCA);
exit(1); // Or other error action.
}
// Use the property as needed.
// ...
// Clear the variant when finished.
VariantClear(&var1);
SysFreeString(bstrCA);
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Ни одна версия не поддерживается |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | certadm.h (включая Certsrv.h) |
Библиотека | Certidl.lib |
DLL | Certadm.dll |