Метод ICertRequest::GetCACertificate (certcli.h)
Метод GetCACertificate возвращает сертификат центра сертификации (ЦС) для сервера служб сертификатов.
Синтаксис
HRESULT GetCACertificate(
[in] LONG fExchangeCertificate,
[in] const BSTR strConfig,
[in] LONG Flags,
[out, retval] BSTR *pstrCertificate
);
Параметры
[in] fExchangeCertificate
Логическое значение, указывающее, какой сертификат ЦС следует вернуть. Если fExchangeCertificate имеет значение false, будет возвращен сертификат подписи ЦС. Сертификат подписи ЦС можно использовать для проверки подписей сертификатов, выданных ЦС.
Windows Server 2003: Если параметру fExchangeCertificate присвоено значение true, возвращается сертификат Exchange ЦС. Сертификат Exchange ЦС можно использовать для шифрования запросов, отправляемых в ЦС.
Начиная с Windows 7 и Windows Server 2008 R2 этот параметр игнорируется во время регистрации https://, а функция в случае успешного выполнения всегда возвращает сертификат ЦС exchange. Чтобы получить сертификат подписи ЦС для веб-службы регистрации, используйте метод Property в интерфейсе ICertificationAuthority со значением перечисления CAPropCertificate EnrollmentCAProperty .
Обратите внимание, что значение TRUE определяется (в файле заголовка Майкрософт) для программистов C/C++ как одно, а Visual Basic определяет true ключевое слово как отрицательное значение. В результате разработчики Visual Basic должны использовать один (вместо True), чтобы задать для этого параметра значение TRUE. Однако чтобы задать для этого параметра значение FALSE, разработчики Visual Basic могут использовать ноль или False.
[in] strConfig
Представляет допустимую строку конфигурации для сервера служб сертификатов. Строка может быть URL-адресом HTTPS для сервера регистрации или в форме Имя_\компьютера CAName, где ComputerName — сетевое имя сервера, а CAName — общее имя центра сертификации, указанное при настройке служб сертификации. Сведения об имени строки конфигурации см. в разделе ICertConfig.
Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: URL-адрес HTTPS не поддерживается в качестве входных данных.
[in] Flags
Следующие флаги можно использовать для указания формата возвращаемого сертификата.
Значение | Значение |
---|---|
|
Формат BASE64 с начальным и конечным. |
|
Формат BASE64 без начала и конца. |
|
Двоичный формат. |
Следующий флаг можно объединить с флагом формата, чтобы указать, что полная цепочка сертификатов должна быть включена в запрошенный сертификат ЦС. В противном случае возвращается только запрошенный сертификат ЦС (в формате X.509 ).
Значение | Значение |
---|---|
|
Включите полную цепочку сертификатов в PKCS 7. |
[out, retval] pstrCertificate
Указатель на BSTR , содержащий сертификат ЦС для сервера служб сертификатов в указанном формате.
Возвращаемое значение
C++
Если метод выполнен успешно, метод возвращает S_OK.После успешного выполнения этого метода параметру *pstrCertificate присваивается значение BSTR , содержащее сертификат ЦС. Чтобы использовать этот метод, создайте переменную типа BSTR , задайте для переменной значение NULL и передайте адрес этой переменной как pstrCertificate.
Завершив использование *pstrCertificate, освободите его, вызвав функцию SysFreeString .
Если метод завершается сбоем, он возвращает значение HRESULT , указывающее на ошибку. Список распространенных кодов ошибок см. в разделе Общие значения HRESULT.
VB
Сертификат ЦС для сервера служб сертификатов в указанном формате.Комментарии
Задачи администрирования используют DCOM. Код, вызывающий этот метод интерфейса, как определено в более ранней версии Certadm.h, будет выполняться на серверах Windows, если клиент и сервер работают под одной операционной системой Windows.
Требования
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | certcli.h (включая Certsrv.h) |
Библиотека | Certidl.lib |
DLL | Certcli.dll |