使用 Windows Vista 的凭据提供程序创造自定义的登录体验
2009-02-09 17:43:37 来源:WEB开发网核心提示: 图 1GINA 登录体系结构计算机上已注册的 GINA 加载到 winlogon 进程空间中,(还可能加载一个称作“GINA 链接”的配置,使用 Windows Vista 的凭据提供程序创造自定义的登录体验(2),但测试和支持这样的复杂配置很困难,)最后,Log
图 1GINA 登录体系结构
计算机上已注册的 GINA 加载到 winlogon 进程空间中。(还可能加载一个称作“GINA 链接”的配置,但测试和支持这样的复杂配置很困难。)最后,GINA 调用 LogonUser 以及相关的身份验证 API。
在 Windows Vista 中,会话 0 不再用于交互式登录(请参见图 2)。这有利于提高安全性,因为现在已有一个会话边界将所有的计算机进程与各个用户的进程分隔开来。此外,现在对内核全局命名空间的控制也更加严格,因为默认情况下由用户应用程序创建的对象已不在内核全局命名空间之内。
图 2新的登录体系结构
除会话 0 之外的每一个会话仍会有一个 winlogon 实例。图 2 显示,系统中已注册了几个凭据提供程序,并已通过新的 LogonUI 进程加载。
在由哪个组件负责显示登录图形界面方面也有一个重要的改动。以前,这是由 GINA 来处理的,因此,显示界面的工作可能一直由第三方组件来完成。在新的体系结构中,这是由操作系统的一个内置组件 LogonUI 来负责完成的。
那么每个提供程序的用户提示行为在新的模型中是如何实现的呢?“凭据提供程序”体系结构要求每个提供程序都要列举说明它所需要的 UI 元素。例如,在某个指定的方案中,提供程序可能会向 LogonUI 表明它需要两个编辑框、两个标题、一个复选框和一个位图。然后,LogonUI 为凭据提供程序显示这些控件。这对实现以前讨论的目标大有帮助,即用一致的外观和方法来广泛支持不断修改完善的用户验证方案。
更多精彩
赞助商链接