LSA_SECPKG_FUNCTION_TABLE structure (ntsecpkg.h)
The LSA_SECPKG_FUNCTION_TABLE structure contains pointers to the LSA functions that a security package can call. The Local Security Authority (LSA) passes this structure to a security package when it calls the package's SpInitialize function.
Syntax
typedef struct _LSA_SECPKG_FUNCTION_TABLE {
PLSA_CREATE_LOGON_SESSION CreateLogonSession;
PLSA_DELETE_LOGON_SESSION DeleteLogonSession;
PLSA_ADD_CREDENTIAL AddCredential;
PLSA_GET_CREDENTIALS GetCredentials;
PLSA_DELETE_CREDENTIAL DeleteCredential;
PLSA_ALLOCATE_LSA_HEAP AllocateLsaHeap;
PLSA_FREE_LSA_HEAP FreeLsaHeap;
PLSA_ALLOCATE_CLIENT_BUFFER AllocateClientBuffer;
PLSA_FREE_CLIENT_BUFFER FreeClientBuffer;
PLSA_COPY_TO_CLIENT_BUFFER CopyToClientBuffer;
PLSA_COPY_FROM_CLIENT_BUFFER CopyFromClientBuffer;
PLSA_IMPERSONATE_CLIENT ImpersonateClient;
PLSA_UNLOAD_PACKAGE UnloadPackage;
PLSA_DUPLICATE_HANDLE DuplicateHandle;
PLSA_SAVE_SUPPLEMENTAL_CREDENTIALS SaveSupplementalCredentials;
PLSA_CREATE_THREAD CreateThread;
PLSA_GET_CLIENT_INFO GetClientInfo;
PLSA_REGISTER_NOTIFICATION RegisterNotification;
PLSA_CANCEL_NOTIFICATION CancelNotification;
PLSA_MAP_BUFFER MapBuffer;
PLSA_CREATE_TOKEN CreateToken;
PLSA_AUDIT_LOGON AuditLogon;
PLSA_CALL_PACKAGE CallPackage;
PLSA_FREE_LSA_HEAP FreeReturnBuffer;
PLSA_GET_CALL_INFO GetCallInfo;
PLSA_CALL_PACKAGEEX CallPackageEx;
PLSA_CREATE_SHARED_MEMORY CreateSharedMemory;
PLSA_ALLOCATE_SHARED_MEMORY AllocateSharedMemory;
PLSA_FREE_SHARED_MEMORY FreeSharedMemory;
PLSA_DELETE_SHARED_MEMORY DeleteSharedMemory;
PLSA_OPEN_SAM_USER OpenSamUser;
PLSA_GET_USER_CREDENTIALS GetUserCredentials;
PLSA_GET_USER_AUTH_DATA GetUserAuthData;
PLSA_CLOSE_SAM_USER CloseSamUser;
PLSA_CONVERT_AUTH_DATA_TO_TOKEN ConvertAuthDataToToken;
PLSA_CLIENT_CALLBACK ClientCallback;
PLSA_UPDATE_PRIMARY_CREDENTIALS UpdateCredentials;
PLSA_GET_AUTH_DATA_FOR_USER GetAuthDataForUser;
PLSA_CRACK_SINGLE_NAME CrackSingleName;
PLSA_AUDIT_ACCOUNT_LOGON AuditAccountLogon;
PLSA_CALL_PACKAGE_PASSTHROUGH CallPackagePassthrough;
CredReadFn *CrediRead;
CredReadDomainCredentialsFn *CrediReadDomainCredentials;
CredFreeCredentialsFn *CrediFreeCredentials;
PLSA_PROTECT_MEMORY DummyFunction1;
PLSA_PROTECT_MEMORY DummyFunction2;
PLSA_PROTECT_MEMORY DummyFunction3;
PLSA_PROTECT_MEMORY LsaProtectMemory;
PLSA_PROTECT_MEMORY LsaUnprotectMemory;
PLSA_OPEN_TOKEN_BY_LOGON_ID OpenTokenByLogonId;
PLSA_EXPAND_AUTH_DATA_FOR_DOMAIN ExpandAuthDataForDomain;
PLSA_ALLOCATE_PRIVATE_HEAP AllocatePrivateHeap;
PLSA_FREE_PRIVATE_HEAP FreePrivateHeap;
PLSA_CREATE_TOKEN_EX CreateTokenEx;
CredWriteFn *CrediWrite;
CrediUnmarshalandDecodeStringFn *CrediUnmarshalandDecodeString;
PLSA_PROTECT_MEMORY DummyFunction4;
PLSA_PROTECT_MEMORY DummyFunction5;
PLSA_PROTECT_MEMORY DummyFunction6;
PLSA_GET_EXTENDED_CALL_FLAGS GetExtendedCallFlags;
PLSA_DUPLICATE_HANDLE DuplicateTokenHandle;
PLSA_GET_SERVICE_ACCOUNT_PASSWORD GetServiceAccountPassword;
PLSA_PROTECT_MEMORY DummyFunction7;
PLSA_AUDIT_LOGON_EX AuditLogonEx;
PLSA_CHECK_PROTECTED_USER_BY_TOKEN CheckProtectedUserByToken;
PLSA_QUERY_CLIENT_REQUEST QueryClientRequest;
PLSA_GET_APP_MODE_INFO GetAppModeInfo;
PLSA_SET_APP_MODE_INFO SetAppModeInfo;
PLSA_GET_CLIENT_INFO_EX GetClientInfoEx;
} LSA_SECPKG_FUNCTION_TABLE, *PLSA_SECPKG_FUNCTION_TABLE;
Members
CreateLogonSession
Pointer to the CreateLogonSession function.
DeleteLogonSession
Pointer to the DeleteLogonSession function.
AddCredential
Pointer to the AddCredential function.
GetCredentials
Pointer to the GetCredentials function.
DeleteCredential
Pointer to the DeleteCredential function.
AllocateLsaHeap
Pointer to the AllocateLsaHeap function.
FreeLsaHeap
Pointer to the FreeLsaHeap function.
AllocateClientBuffer
Pointer to the AllocateClientBuffer function.
FreeClientBuffer
Pointer to the FreeClientBuffer function.
CopyToClientBuffer
Pointer to the CopyToClientBuffer function.
CopyFromClientBuffer
Pointer to the CopyFromClientBuffer function.
ImpersonateClient
Pointer to the ImpersonateClient function.
UnloadPackage
Pointer to the UnloadPackage function.
DuplicateHandle
Pointer to the DuplicateHandle function.
SaveSupplementalCredentials
Pointer to the SaveSupplementalCredentials function.
CreateThread
Pointer to the CreateThread function.
GetClientInfo
Pointer to the GetClientInfo function.
RegisterNotification
Pointer to the RegisterNotification function.
CancelNotification
Pointer to the CancelNotification function.
MapBuffer
Pointer to the MapBuffer function.
CreateToken
Pointer to the CreateToken function.
AuditLogon
Pointer to the AuditLogon function.
CallPackage
Pointer to the CallPackage function.
FreeReturnBuffer
Pointer to the FreeReturnBuffer function.
GetCallInfo
Pointer to the GetCallInfo function.
CallPackageEx
Pointer to the CallPackageEx function.
CreateSharedMemory
Pointer to the CreateSharedMemory function.
AllocateSharedMemory
Pointer to the AllocateSharedMemory function.
FreeSharedMemory
Pointer to the FreeSharedMemory function.
DeleteSharedMemory
Pointer to the DeleteSharedMemory function.
OpenSamUser
Pointer to the OpenSamUser function.
GetUserCredentials
Pointer to the GetUserCredentials function.
GetUserAuthData
Pointer to the GetUserAuthData function.
CloseSamUser
Pointer to the CloseSamUser function.
ConvertAuthDataToToken
Pointer to the ConvertAuthDataToToken function.
ClientCallback
Pointer to the ClientCallback function.
UpdateCredentials
Pointer to the UpdateCredentials function.
GetAuthDataForUser
Pointer to the GetAuthDataForUser function.
CrackSingleName
Pointer to the CrackSingleName function.
AuditAccountLogon
Pointer to the AuditAccountLogon function.
CallPackagePassthrough
Pointer to the CallPackagePassthrough function.
CrediRead
Pointer to the CrediRead function.
CrediReadDomainCredentials
Pointer to the CrediReadDomainCredentials function.
CrediFreeCredentials
Pointer to the CrediFreeCredentials function.
DummyFunction1
DummyFunction2
DummyFunction3
LsaProtectMemory
Pointer to the LsaProtectMemory function.
LsaUnprotectMemory
Pointer to the LsaUnprotectMemory function.
OpenTokenByLogonId
Pointer to the OpenTokenByLogonId function.
ExpandAuthDataForDomain
Pointer to the ExpandAuthDataForDomain function.
AllocatePrivateHeap
Pointer to the AllocatePrivateHeap function.
FreePrivateHeap
Pointer to the FreePrivateHeap function.
CreateTokenEx
Pointer to the CreateTokenEx function.
CrediWrite
Pointer to the CrediWrite function.
CrediUnmarshalandDecodeString
Pointer to the CrediUnmarshalandDecodeString function.
Windows Server 2003 and Windows XP: This function is not implemented.
DummyFunction4
DummyFunction5
DummyFunction6
Introduced in Windows 8 and above for internal Microsoft use only.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP: This function is not implemented.
GetExtendedCallFlags
Pointer to the GetExtendedCallFlags function.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP: This function is not implemented.
DuplicateTokenHandle
Pointer to the DuplicateTokenHandle function.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP: This function is not implemented.
GetServiceAccountPassword
Pointer to the GetServiceAccountPassword function.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP: This function is not implemented.
DummyFunction7
Introduced in Windows 8 and above for internal Microsoft use only.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP: This function is not implemented.
AuditLogonEx
Pointer to the AuditLogonEx function.
CheckProtectedUserByToken
Pointer to the CheckProtectedUserByToken function.
QueryClientRequest
Pointer to the QueryClientRequest function.
GetAppModeInfo
Pointer to the GetAppModeInfo function.
SetAppModeInfo
Pointer to the SetAppModeInfo function.
GetClientInfoEx
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows XP [desktop apps only] |
Minimum supported server | Windows Server 2003 [desktop apps only] |
Header | ntsecpkg.h |