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


структура KERB_CERTIFICATE_LOGON (ntsecapi.h)

Структура KERB_CERTIFICATE_LOGON содержит сведения о сеансе интеллектуального карта входа.

Он передается в качестве параметра AuthenticationInformation в функцию LsaLogonUser, когда пакет безопасности Kerberos выполняет интерактивный интеллектуальный карта входа.

Синтаксис

typedef struct _KERB_CERTIFICATE_LOGON {
  KERB_LOGON_SUBMIT_TYPE MessageType;
  UNICODE_STRING         DomainName;
  UNICODE_STRING         UserName;
  UNICODE_STRING         Pin;
  ULONG                  Flags;
  ULONG                  CspDataLength;
  PUCHAR                 CspData;
} KERB_CERTIFICATE_LOGON, *PKERB_CERTIFICATE_LOGON;

Члены

MessageType

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

Значение Значение
KerbCertificateLogon
13
Эта структура передается в качестве параметра AuthenticationInformation функции LsaLogonUser для выполнения интерактивного интеллектуального карта входа.
KerbCertificateUnlockLogon
15
Эта структура используется в качестве элемента входав структуру KERB_CERTIFICATE_UNLOCK_LOGON .

DomainName

Доменное имя пользователя для проверки подлинности. Значение этого элемента может быть пустым. Если значение не пустое, LsaLogonUser использует значение для поиска центра распространения ключей (KDC). Если значение пусто, LsaLogonUser пытается пройти проверку подлинности в домене, к которому присоединен компьютер. Указатель относительно начала структуры и не является абсолютным указателем памяти.

UserName

Имя пользователя для проверки подлинности. Значение этого элемента может быть пустым. Если значение не пустое, LsaLogonUser использует значение для поиска учетной записи пользователя для проверки подлинности. Указатель относительно начала структуры и не является абсолютным указателем памяти.

Pin

ПИН-код, используемый для проверки подлинности пользователя. Элемент Length этой структуры не содержит завершающий символ NULL ПИН-кода. Указатель относительно начала структуры и не является абсолютным указателем памяти.

ПИН-код можно защитить с помощью функции CredProtect .

Flags

Необязательные флаги, управляющие поведением проверки подлинности. Определены следующие значения.

Значение Значение
KERB_CERTIFICATE_LOGON_FLAG_CHECK_DUPLICATES
0x1
KDC проверяет сертификат на наличие нескольких сопоставлений учетных записей.
KERB_CERTIFICATE_LOGON_FLAG_USE_CERTIFICATE_INFO
0x2
KDC использует сведения о сертификате для проверки подлинности.

Windows Server 2008 R2, Windows 7, Windows Server 2008 и Windows Vista: Этот флаг недоступен.

CspDataLength

Длина элемента CspData в символах.

CspData

Указатель на структуру KERB_SMARTCARD_CSP_INFO, содержащую сведения о поставщике служб шифрования смарт-карта (CSP) или указатель на структуру маршалированного KERB_CERTIFICATE_INFO при обновлении учетных данных сертификата.

Комментарии

Эта структура вместе с данными, на которые указывают члены DomainName, UserName, Pin и CspData , содержится в одном блоке непрерывной памяти. При сериализации этой структуры смещения, заданные каждым из этих элементов, должны быть кратными двум.

Указатели, хранящиеся в членах типа UNICODE_STRING , относятся к началу структуры и не являются абсолютными указателями памяти.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Верхняя часть ntsecapi.h

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

KERB_CERTIFICATE_UNLOCK_LOGON

KERB_SMARTCARD_CSP_INFO

LsaLogonUser