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


Метод IX509EnrollmentHelper::AddPolicyServer (certenroll.h)

Метод AddPolicyServer регистрирует сервер политики регистрации сертификатов (CEP) и сохраняет учетные данные доступа CEP в кэше учетных данных. Этот метод включен через Интернет.

Синтаксис

HRESULT AddPolicyServer(
  [in] BSTR                    strEnrollmentPolicyServerURI,
  [in] BSTR                    strEnrollmentPolicyID,
  [in] PolicyServerUrlFlags    EnrollmentPolicyServerFlags,
  [in] X509EnrollmentAuthFlags authFlags,
  [in] BSTR                    strCredential,
  [in] BSTR                    strPassword
);

Параметры

[in] strEnrollmentPolicyServerURI

BSTR, содержащий URL-адрес сервера политики регистрации сертификатов.

[in] strEnrollmentPolicyID

BSTR, содержащий идентификатор сервера политики регистрации сертификатов. Идентификатор может быть любой строкой. Он устанавливается администратором, который устанавливает сервер CEP.

[in] EnrollmentPolicyServerFlags

Значение перечисления PolicyServerUrlFlags . Для функции AddPolicyServer можно указать побитовое ИЛИ следующих значений.

Значение Значение
PsfAutoEnrollmentEnabled
Автоматическая регистрация сертификатов включена.
PsfAllowUnTrustedCA
Указывает, что сертификат выдающего ЦС не должен быть доверенным для клиента для установки сертификата, подписанного ЦС.

[in] authFlags

Значение перечисления X509EnrollmentAuthFlags , указывающее тип проверки подлинности клиента. Это может быть одно из следующих значений.

Значение Значение
X509AuthAnonymous
Анонимная проверка подлинности. Задайте для параметров strCredential и strPasswordзначение NULL.
X509AuthKerberos
Аутентификация Kerberos. Задайте для параметров strCredential и strPasswordзначение NULL.
X509AuthUsername
Очистить текстовое имя пользователя и пароль для проверки подлинности. Задайте для параметров strCredential и strPassword имя пользователя и связанный пароль. Эти строки шифруются перед передачей и безопасно хранятся в хранилище учетных данных на сервере CEP.
X509AuthCertificate
Сертификат проверки подлинности клиента, установленный на локальном компьютере и используемый сервером для проверки удостоверения клиента. Задайте для параметра strPasswordзначение NULL и задайте отпечаток сертификата ( 20-байтовый хэш SHA1 сертификата) в параметре strCredential .

[in] strCredential

Объект BSTR, содержащий учетные данные.

[in] strPassword

Строка BSTR, содержащая пароль в виде ясного текста.

Возвращаемое значение

Если функция завершается успешно, функция возвращает S_OK.

Если функция завершается сбоем, она возвращает значение HRESULT , указывающее на ошибку. Допустимые значения включают, но не ограничиваются, значения, приведенные в следующей таблице. Список распространенных кодов ошибок см. в разделе Общие значения HRESULT.

Код возврата Описание
E_INVALIDARG
Параметры strEnrollmentPolicyServerURI, strCredential или strPassword не могут иметь значение NULL или пустые.
HRESULT_FROM_WIN32(ERROR_ARITHMETIC_OVERFLOW)
Параметры strPassword, strCredential или strEnrollmentServerURI превышают 64 000 символов или содержат внедренные символы NULL.

Комментарии

Аргументы strCredential и strPassword изменяются в зависимости от значения, указанного в аргументе authFlags , как показано в следующей таблице.

Параметр флага Параметр strCredential Параметр strPassword
X509AuthAnonymous NULL NULL
X509AuthKerberos NULL NULL
X509AuthUsername Понятное текстовое имя пользователя, распознаваемое сервером CEP. Пароль для очистки текста, связанный с именем пользователя.
X509AuthCertificate Содержит 20-байтный хэш SHA-1 (отпечаток) сертификата. NULL

Требования

Требование Значение
Минимальная версия клиента Windows 7 [только классические приложения]
Минимальная версия сервера Windows Server 2008 R2 [только классические приложения]
Целевая платформа Windows
Header certenroll.h

См. также раздел

IX509EnrollmentHelper