LOGON描述(2)

作者:陆麟
转载请征得作者同意.如有BUG,请汇报.
2000.3.14


NT的LOGON描述开始了.在讲述NT的LOGON之前,有几个关键的字眼要说一下.
LOGON进程: NT的登录进程.拥有工作站,桌面,键盘,鼠标的独占控制.
GINA: Graphical Identification and Authentication,图形身份验证
GINA STUB: 实现部分GINA接口的一个DLL.
LSA: Local Security Authority, 本地安全验证
MPR: Multiple Provider Router.网络供应者路由器.:D
NP: Network Provider.网络供应者.

LOGON进程乃是登录的初始者,也是用户在使用安装有NT计算机时通常会经历的登录阶段的前台程序.LOGON本身是个很特殊的应用程序.名字为登录,但是实际上并不负责登录验证.他仅仅收集用户名,密码,域的信息.进行一些特定的操作.这些特定的操作将在后面讲到.

GINA实际上是个DLL.MS对他的定义是图形身份验证,其实也不负责验证.那么为什么要称为图形身份验证呢?关键是LOGON进程把验证请求扔给GINA后就不管了.对LOGON来说就是验证了.:DDD 这是我的猜测不是MS官方的信息. GINA本身是LOGON用到的一个DLL.这个DLL在LOGON的地址空间内. GINA本身能够很大程度上影响LOGON的运行逻辑.

GINA STUB,MS介绍了GINA STUB的概念,它是个轻量级的GINA.本身实现部分的接口,其他的接口仍然有老的GINA实现,GINA STUB则负责PASS DOWN函数调用.

LSA,从INSIDE NT书上讲,LSASS(LSA的实际实现)乃是LOGON进程的子进程.从实际的NT运行实际看,尽管LSASS是LOGON的子进程,但是在逻辑上却是平级的.LOGON通过LPC和LSASS交互,来实际进行登录操作.

MPR,很关键的NT网络实现组件.由于NT允许多个网络架构的存在,如同时有NETWARE服务器存在于NT网络上.所以,MPR成为了WINDOWS网络应用的实际枢纽.如同在本机上的IO管理器,拥有对本机的绝对权威,而MPR则在本机访问网络时有绝定性作用.从NT的实际实现上看,任何一个WIN32API在访问一个资源时,IO管理器都会检查该资源是否为网络资源.如果为网络资源,则将控制转MPR.有MPR负责对该资源的控制.
NP: 为了让多种架构的网络同时并存于NT.网络供应商必须提供他自己的DLL,并且实现MS规定的特定的接口,以变MPR对网络资源的调度.

没想到一些基本的东西也会写这么长.那么接下来东西就过几天写吧.