Platform SDK: Logon Authentication

SEC_WINNT_AUTH_IDENTITY_EX

The SEC_WINNT_AUTH_IDENTITY_EX structure contains information about a user. Both an ASCI and UNICODE form of this structure are provided.

typedef struct _SEC_WINNT_AUTH_IDENTITY_EX {
    unsigned long Version;
    unsigned long Length;
    LPTSTR User;
    unsigned long UserLength;
    LPTSTR Domain;
    unsigned long DomainLength;
    LPTSTR Password;
    unsigned long PasswordLength;
    unsigned long Flags;
    LPTSTR PackageList;
    unsigned long PackageListLength;
} SEC_WINNT_AUTH_IDENTITY_EX, *PSEC_WINNT_AUTH_IDENTITY_EX;

Members

Version
Unsigned long indicating the version number of the structure.
Length
Unsigned long indicating the length of the structure in bytes.
User
UNICODE or ANSI string with the name of the user account.
UserLength
Unsigned long indicating the length of the user name string.
Domain
UNICODE or ANSI string with the name of the domain for the user account.
DomainLength
Unsigned long indicating the length of the domain name string.
Password;
UNICODE or ANSI string with the user password in plaintext.
PasswordLength
Unsigned long indicating the length of the password string.
Flags
Unsigned long flag indicating the type used by negotiable security packages.
Flag value Meaning
SEC_WINNT_AUTH_IDENTITY_MARSHALLED All data is in one buffer.
SEC_WINNT_AUTH_IDENTITY_ONLY Used with the Kerberos SSP. Credentials are for identity only. The Kerberos package is directed to not include authorization data in the ticket.
SEC_WINNT_AUTH_IDENTITY_ANSI Credentials are in ANSI form.
SEC_WINNT_AUTH_IDENTITY_UNICODE Credentials are in UNICODE form.

PackageList
UNICODE or ANSI string comma separated list of names of security packages to use.
PackageListLength
Unsigned long indicating the length of the package list string.