有关登陆的两个重要概念:认证(Authentication):确认身份的过程;授权(Authorization)明确当前什么可以操作、什么可资源可以访问。
1、登陆方式:系统登陆方式、网络登陆方式、交互式登陆方式、服务登陆方式、批处理登陆方式。
2、认证=凭据+验证(validation)
凭据:身份的证明,如系统的用户名和用户的密码。
验证:由Local Security Authority(LSA)来完成。LSA管理本地安全策略、管理审计策略和设置、为用户生成包含SID和组权限关系的令牌。LSA验证的过程:LSA通过访问本地SAM(Security Accounts Manager)数据库,可以完成本地用户的验证。
安全主体:任何可以发起请求和动作的用户、组、计算机,都是安全主体。登陆本地计算机时,用户的ID和密码存储在本机的SAM数据库。在域环境下使用AD数据库。
交互登陆方式的核心组件:Winlogon(Winlogon.exe)、GINA(Msgina.dll)(这个DLL用来接收用户和密码)、Local Security Authority(LSA)(LSA以一种安全的方式收到Msgina.dll传送来的用户名和密码,并对其进行处理)、Authentication Package(LSA调用该组件来分别处理本地登陆和网络登陆、Netlogon(Local Computer、Netlogon(Domain Computer)、Authentication Package)、Security Account Manager
·Winlogon的作用:负责进行安全的用户登陆和交互的可执行文件,启动登陆进程。具体完成如下工作:桌面锁定、标准SAS(Secure Attention Sequence)标准动作的识别、SAS标准例程的分发、加载User Profile、控制屏幕保护程序、支持多种网络服务提供者、查找GINA(MSGINA.dll)。
·GINA。是一个被Winlogon进程在启动的前期阶段加载的DLL模块。GINA负责处理SAS事件并激活用户SHELL。作用:
可以实现在登陆之前的警告提醒框;
显示上一次登陆用户名;
自动登陆、允许关机;
激活Userinit.exe进程。
在Vista之前2000之后的Windows可以自定义GINA,如:指纹识别登陆。但是Vista中,用户的自定义的GINA将被忽视掉。
LSA(Local Security Authority):Winlogon和GINA调用LSA处理登陆凭据。LSA的验证过程中包括了如下的组件:验证包(Authentication Packages)、SAM和AD。
·NetLogon服务:NetLogon服务验证NTLM的登陆请求,注册、认证和定位域控制器的位置,并提供NT4.0的兼容性、更新主机的DNS记录、定位域控制器。
Windows登录流程图:
