身份验证包

身份验证包 包含在动态链接库中。 本地安全机构 (LSA) 使用注册表中存储的配置信息加载身份验证包。 加载多个身份验证包允许 LSA 支持多个登录进程和多个 安全协议

登录进程使用身份验证包来分析登录数据。 通过添加 GINA 来收集所需的登录数据,并根据需要添加新的身份验证包来分析数据,将新的登录进程添加到系统中。

安全协议由身份验证包实现。 身份验证包按照安全协议中设置的规则和过程分析登录数据。

身份验证包负责以下任务:

  • 分析登录数据以确定是否允许 安全主体 登录到系统。
  • 建立新的 登录会话 ,并为成功通过身份验证的主体创建唯一 登录标识符
  • 将安全信息传递给 LSA 以获取主体的安全令牌。

当用户尝试交互式登录时,LSA 会调用身份验证包,以确定是否允许用户登录。 例如,MSV1_0是随 Microsoft Windows 操作系统一起安装的身份验证包。 MSV1_0包接受用户名和 经过哈希处理 的密码。 它会在安全帐户管理器 (SAM) 数据库中查找用户名和经过哈希处理的密码组合。 如果登录数据与存储的 凭据匹配,身份验证包将允许登录成功。

成功对 安全主体的 凭据进行身份验证后,身份验证包负责为主体创建新的 LSA 登录会话,并分配唯一标识登录会话的登录 标识符 。 身份验证包可以将凭据信息与后续身份验证请求的登录会话相关联。 例如,Microsoft) 提供的 MSV1_0 身份验证包 (将用户帐户名和用户密码的哈希与每个登录会话相关联。

身份验证包还提供一组 安全标识符 (SID) 以及适合包含在 LSA 创建的安全令牌中的其他信息。 此令牌将表示主体的安全 上下文 ,用于访问 Windows 操作。

创建登录会话并与主体关联后,代表该主体发出的后续身份验证请求的处理方式与初始登录不同。 身份验证包不会创建新的登录会话,也不会返回用于创建令牌的信息。 但是,身份验证包可以将后续身份验证期间获取的 补充凭据 与主体的现有登录会话相关联。 当访问请求的资源所需的信息超出初始登录所建立的凭据时,将获取补充凭据。 例如,当登录用户请求 Novell 网络登录时,可以调用特定于 Novell 的身份验证包,并且可以对特定于 Novell 的凭据进行身份验证并与登录会话相关联。 当用户访问 Novell 网络时,可以通过 Novell 身份验证包) 通过 Novell 重定向程序 (引用这些凭据。

以下主题讨论各种类型的 身份验证包