SSPI 凭据管理功能提供用于访问主体的 凭据 句柄、对不透明安全对象的引用。 安全对象不透明,因为应用程序只能访问句柄,而不能访问结构的实际内容。
对凭据上下文内容的所有引用都通过对象的句柄和 安全包 取消引用句柄以访问凭据的具体信息。 凭据句柄是 {0x00000000、 0x00000000} 和 {0xFFFFFFFF, 0xFFFFFFFE} 之间的 64 位值。
应用程序使用凭据句柄和 上下文管理功能 来创建 安全上下文 。
凭据管理功能还释放凭据句柄并查询 凭据 的属性 。 目前,与凭据关联的名称是唯一可以查询的属性。
以下函数用于凭据管理。
SSPI 上下文管理功能创建和使用 安全上下文 。
在通信链接中,客户端和服务器合作创建共享安全上下文。 客户端和服务器都将安全上下文与 消息支持 函数结合使用,以确保连接期间的消息 完整性 和 隐私 。
安全上下文是不透明的安全对象。 安全上下文中的信息对应用程序不可用。 上下文管理功能创建和使用上下文句柄,安全包取消引用上下文句柄以访问其安全内容。
上下文句柄是 {0x00000000、 0x00000000} 和 {0xFFFFFFFF, 0xFFFFFFFE} 之间的 64 位值。
以下函数用于上下文管理。
SSPI 消息支持函数使应用程序能够传输和接收防篡改消息,以及加密和解密消息。 这些函数处理包含消息的一个或多个缓冲区,以及 上下文管理功能 创建 的安全上下文 。 函数的行为因连接、 数据报 还是流上下文正在使用而有所不同。 有关这些差异的说明,请参阅 SSPI 上下文语义 。
以下函数为消息提供安全支持。
以下函数由 安全支持提供程序 / 身份验证包 中包含的 安全包 实现, (SSP/APS) 。
在下表中,第一组函数由 Windows XP SSP/AP 安全包实现。 第二组函数仅由 SSP/AP 安全包实现。
本地安全机构 (LSA) 通过使用 SSP/AP 的 SpLsaModeInitialize 函数提供的 SECPKG_FUNCTION_TABLE 结构来访问这些函数。
以下函数由所有身份验证包实现。
以下附加函数由 SSP/AP 安全包实现。
以下函数由 安全支持提供程序 / 身份验证包 实现, (SSP/AP) ,这些包可以加载到客户端/服务器应用程序中。
SSP/AP 指示它在 SpInitLsaModeContext 和 SpAcceptLsaModeContext 函数的 MappedContext 参数中返回 TRUE 来实现用户模式函数。 SpInitLsaModeContext 函数由传输级别应用程序的客户端使用,而 SpAcceptLsaModeContext 则由服务器端使用。
将 SSP/AP 加载到客户端进程或服务器进程由安全提供程序 DLL 处理,Security.dll或Secur32.dll。 安全提供程序 DLL 通过查找 SSP/AP 实现的 SpUserModeInitialize 函数的地址并调用它来加载 SSP/AP。 此函数返回一组表,其中包含指向每个 安全包 中实现的用户模式函数的指针。
将 SSP/AP 加载到客户端或服务器进程后, 本地安全机构 (LSA) 将复制 SpInitLsaModeContext 或 SpAcceptLsaModeContext ) 返回的安全上下文 (信息,并调用安全包的 SpInitUserModeContext 函数。
客户端/服务器应用程序通过调用 安全支持提供程序接口 (SSPI) 函数来访问用户模式功能。 SSPI 函数通过使用包提供的 SECPKG_USER_FUNCTION_TABLE 由安全提供程序 DLL 映射。
本地安全机构 (LSA) 为 安全支持提供程序 / 身份验证包 中部署 的安全包 提供了以下功能, (SSP/APS) 。 这些函数在 LSA_SECPKG_FUNCTION_TABLE 结构中可用,可以在 SSP/AP 加载到 LSA 的进程空间中时调用。 以下函数适用于所有 AP。
以下函数提供登录用户的功能。
以下主题提供网络提供程序函数的参考信息。
以下 本地安全机构 (LSA) 身份验证功能对用户进行身份验证和登录,并提供登录会话信息。
可以从自定义身份验证包调用以下 本地安全机构 (LSA) 函数。 当 LSA 调用 LsaApInitializePackage 以初始化包时,它将传递支持函数表。
下面是低级别凭据管理功能。
以下函数由凭据管理器实现,用于在身份验证信息更改时接收通知。
下面是用于身份验证的其他函数。