Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Метод SetCredential задает учетные данные, используемые для связи с веб-службой регистрации сертификатов.
Синтаксис
HRESULT SetCredential(
[in] LONG hWnd,
[in] X509EnrollmentAuthFlags AuthType,
[in] BSTR strCredential,
[in] BSTR strPassword
);
Параметры
[in] hWnd
Дескриптор родительского окна.
Для получения учетных данных необходимо задать параметр hWnd .
Для авторизации на основе сертификата дескриптор используется, если для получения учетных данных требуется запрос пользовательского интерфейса, например, если учетные данные используются на смарт-карта и требуется запрос на закрепление.
При использовании kerberos, анонимной проверки подлинности или проверки подлинности имени пользователя и пароля этот параметр игнорируется.
[in] AuthType
Значение перечисления X509EnrollmentAuthFlags , указывающее тип проверки подлинности.
| Значение | Значение |
|---|---|
|
Анонимная проверка подлинности.
Задайте для параметров strCredential и strPasswordзначение NULL или пустые строки. |
|
Сертификат проверки подлинности клиента, установленный на локальном компьютере. Сертификат содержит открытый ключ , связанный с закрытым ключом (не содержащимся в сертификате). Сертификат используется сервером для проверки удостоверения клиента.
Параметр strCredential содержит двоичный 20-байтовый хэш SHA-1 сертификата, который передается в веб-службу регистрации сертификатов для проверки подлинности вызывающего объекта. Задайте для параметра strPasswordзначение NULL или пустую строку. Параметр strCredential должен ссылаться на сертификат, установленный в соответствующем личном хранилище сертификатов, и должен иметь связанный закрытый ключ, доступный вызывающему объекту. |
|
Аутентификация Kerberos.
Задайте для параметров strCredential и strPasswordзначение NULL или пустые строки. |
|
Проверка подлинности имени пользователя и пароля в формате обычного текста. Имя пользователя и пароль шифруются при их хранении в хранилище учетных данных на клиенте.
Параметры strCredential и strPassword содержат строку имени пользователя и пароль в виде открытого текста, которые поддерживаются веб-службой регистрации сертификатов для проверки подлинности вызывающего объекта. Так как подключение службы регистрации всегда использует протокол SSL , пароль шифруется при отправке по сети. |
[in] strCredential
Строка, содержащая учетные данные.
[in] strPassword
Строка, содержащая пароль.
Возвращаемое значение
| Код возврата | Описание |
|---|---|
|
Параметр AuthType должен иметь значение X509AuthKerberos. |
Комментарии
Перед вызовом метода ICertRequest2::Submit необходимо вызвать метод SetCredential.
Аргументы strCredential и strPassword изменяются в зависимости от значения, указанного в параметре AuthType , как показано в следующей таблице.
| Параметр AuthType | Параметр strCredential | Параметр strPassword |
|---|---|---|
| X509AuthAnonymous | NULL | NULL |
| X509AuthCertificate | 20-байтный хэш SHA-1 (отпечаток) сертификата | NULL |
| X509AuthKerberos | NULL | NULL |
| X509AuthUsername | Имя пользователя в виде открытого текста, распознаваемое веб-службой регистрации сертификатов. | Пароль в виде открытого текста, связанный с именем пользователя. |
Требования
| Требование | Значение |
|---|---|
| Минимальная версия клиента | Windows 7 [только классические приложения] |
| Минимальная версия сервера | Windows Server 2008 R2 [только классические приложения] |
| Целевая платформа | Windows |
| Header | certcli.h (включая Certsrv.h) |
| Библиотека | Certidl.lib |
| DLL | Certcli.dll |