Condividi tramite


struttura KERB_CERTIFICATE_LOGON (ntsecapi.h)

La struttura KERB_CERTIFICATE_LOGON contiene informazioni su una sessione di accesso tramite smart card.

Viene passato come parametro AuthenticationInformation alla funzione LsaLogonUser quando il pacchetto di sicurezza Kerberos esegue un accesso interattivo alla smart card.

Sintassi

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;

Members

MessageType

Membro dell'enumerazione KERB_LOGON_SUBMIT_TYPE che indica come viene utilizzata questa struttura. Il membro deve essere uno dei valori seguenti.

Valore Significato
KerbCertificateLogon
13
Questa struttura viene passata come parametro AuthenticationInformation alla funzione LsaLogonUser per eseguire un accesso interattivo alla smart card.
KerbCertificateUnlockLogon
15
Questa struttura viene utilizzata come membro logon di una struttura KERB_CERTIFICATE_UNLOCK_LOGON .

DomainName

Nome di dominio dell'utente da autenticare. Il valore di questo membro può essere vuoto. Se il valore non è vuoto, LsaLogonUser usa il valore per individuare il Centro distribuzione chiavi (KDC). Se il valore è vuoto, LsaLogonUser tenta di eseguire l'autenticazione nel dominio a cui viene aggiunto il computer. Il puntatore è relativo all'inizio della struttura e non è un puntatore di memoria assoluto.

UserName

Nome utente dell'utente da autenticare. Il valore di questo membro può essere vuoto. Se il valore non è vuoto, LsaLogonUser usa il valore per individuare l'account utente da autenticare. Il puntatore è relativo all'inizio della struttura e non è un puntatore di memoria assoluto.

Pin

PIN da usare per autenticare l'utente. Il membro Length di questa struttura non include il carattere Null di terminazione del PIN. Il puntatore è relativo all'inizio della struttura e non è un puntatore di memoria assoluto.

Il PIN può essere protetto tramite la funzione CredProtect .

Flags

Flag facoltativi che controllano il comportamento dell'autenticazione. Vengono definiti i valori seguenti.

Valore Significato
KERB_CERTIFICATE_LOGON_FLAG_CHECK_DUPLICATES
0x1
Il KDC controlla il certificato per più mapping di account.
KERB_CERTIFICATE_LOGON_FLAG_USE_CERTIFICATE_INFO
0x2
Il KDC usa le informazioni sul certificato per l'autenticazione.

Windows Server 2008 R2, Windows 7, Windows Server 2008 e Windows Vista: Questo flag non è disponibile.

CspDataLength

Lunghezza, in caratteri, del membro CspData .

CspData

Puntatore a una struttura di KERB_SMARTCARD_CSP_INFO che contiene informazioni sul provider di servizi di crittografia della smart card (CSP) o su un puntatore a una struttura di KERB_CERTIFICATE_INFO sottoposta a marshalling durante l'aggiornamento delle credenziali del certificato.

Commenti

Questa struttura, insieme ai dati a cui puntano i membri DomainName, UserName, Pin e CspData , è contenuta in un singolo blocco di memoria contigua. Quando questa struttura viene serializzata, gli offset specificati da ognuno di questi membri devono essere multipli di due.

I puntatori archiviati nei membri del tipo UNICODE_STRING sono relativi all'inizio della struttura e non sono puntatori di memoria assoluti.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Intestazione ntsecapi.h

Vedi anche

KERB_CERTIFICATE_UNLOCK_LOGON

KERB_SMARTCARD_CSP_INFO

LsaLogonUser