SecurityFunctionTableA 结构 (sspi.h)

SecurityFunctionTable 结构是一个调度表,其中包含指向 SSPI 中定义的函数的指针。

语法

typedef struct _SECURITY_FUNCTION_TABLE_A {
  unsigned long                        dwVersion;
  ENUMERATE_SECURITY_PACKAGES_FN_A     EnumerateSecurityPackagesA;
  QUERY_CREDENTIALS_ATTRIBUTES_FN_A    QueryCredentialsAttributesA;
  ACQUIRE_CREDENTIALS_HANDLE_FN_A      AcquireCredentialsHandleA;
  FREE_CREDENTIALS_HANDLE_FN           FreeCredentialHandle;
  void                                 *Reserved2;
  INITIALIZE_SECURITY_CONTEXT_FN_A     InitializeSecurityContextA;
  ACCEPT_SECURITY_CONTEXT_FN           AcceptSecurityContext;
  COMPLETE_AUTH_TOKEN_FN               CompleteAuthToken;
  DELETE_SECURITY_CONTEXT_FN           DeleteSecurityContext;
  APPLY_CONTROL_TOKEN_FN               ApplyControlToken;
  QUERY_CONTEXT_ATTRIBUTES_FN_A        QueryContextAttributesA;
  IMPERSONATE_SECURITY_CONTEXT_FN      ImpersonateSecurityContext;
  REVERT_SECURITY_CONTEXT_FN           RevertSecurityContext;
  MAKE_SIGNATURE_FN                    MakeSignature;
  VERIFY_SIGNATURE_FN                  VerifySignature;
  FREE_CONTEXT_BUFFER_FN               FreeContextBuffer;
  QUERY_SECURITY_PACKAGE_INFO_FN_A     QuerySecurityPackageInfoA;
  void                                 *Reserved3;
  void                                 *Reserved4;
  EXPORT_SECURITY_CONTEXT_FN           ExportSecurityContext;
  IMPORT_SECURITY_CONTEXT_FN_A         ImportSecurityContextA;
  ADD_CREDENTIALS_FN_A                 AddCredentialsA;
  void                                 *Reserved8;
  QUERY_SECURITY_CONTEXT_TOKEN_FN      QuerySecurityContextToken;
  ENCRYPT_MESSAGE_FN                   EncryptMessage;
  DECRYPT_MESSAGE_FN                   DecryptMessage;
  SET_CONTEXT_ATTRIBUTES_FN_A          SetContextAttributesA;
  SET_CREDENTIALS_ATTRIBUTES_FN_A      SetCredentialsAttributesA;
  CHANGE_PASSWORD_FN_A                 ChangeAccountPasswordA;
  void                                 *Reserved9;
  QUERY_CONTEXT_ATTRIBUTES_EX_FN_A     QueryContextAttributesExA;
  QUERY_CREDENTIALS_ATTRIBUTES_EX_FN_A QueryCredentialsAttributesExA;
} SecurityFunctionTableA, *PSecurityFunctionTableA;

成员

dwVersion

表的版本号。

EnumerateSecurityPackagesA

QueryCredentialsAttributesA

AcquireCredentialsHandleA

FreeCredentialHandle

Reserved2

保留供将来使用。

InitializeSecurityContextA

AcceptSecurityContext

指向 AcceptSecurityContext (General) 函数的 指针。

CompleteAuthToken

指向 CompleteAuthToken 函数的指针。

DeleteSecurityContext

指向 DeleteSecurityContext 函数的指针。

ApplyControlToken

指向 ApplyControlToken 函数的指针。

QueryContextAttributesA

ImpersonateSecurityContext

指向 ImpersonateSecurityContext 函数的 指针。

RevertSecurityContext

指向 RevertSecurityContext 函数的指针。

MakeSignature

指向 MakeSignature 函数的 指针。

VerifySignature

指向 VerifySignature 函数的 指针。

FreeContextBuffer

指向 FreeContextBuffer 函数的 指针。

QuerySecurityPackageInfoA

Reserved3

留待将来使用。

Reserved4

留待将来使用。

ExportSecurityContext

指向 ExportSecurityContext 函数的指针。

ImportSecurityContextA

AddCredentialsA

Reserved8

保留供将来使用。

QuerySecurityContextToken

指向 QuerySecurityContextToken 函数的指针。

EncryptMessage

指向 EncryptMessage (General) 函数的 指针。

DecryptMessage

指向 DecryptMessage (General) 函数的 指针。

SetContextAttributesA

SetCredentialsAttributesA

ChangeAccountPasswordA

Reserved9

QueryContextAttributesExA

QueryCredentialsAttributesExA

注解

注意

sspi.h 标头将 SecurityFunctionTable 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名的使用与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

   
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 sspi.h (包括 Security.h)

另请参阅

InitSecurityInterface