WEB开发网
开发学院操作系统Windows XP 用户系列之三:用户登录及访问资源的过程之访问令... 阅读

用户系列之三:用户登录及访问资源的过程之访问令牌篇

 2009-01-06 10:18:12 来源:WEB开发网   
核心提示:各位都知道,工作组下本地用户登录需要到本地的SAM数据库中做身份验证,用户系列之三:用户登录及访问资源的过程之访问令牌篇,而域用户如果在域内的客户机上登录,需要到AD数据库中作身份验证,User1会通过逐级访问GC,才能找到那个域的,我在这里仅以域用户为例来说明用户的详细的登录过程,如果是你是域用户

各位都知道,工作组下本地用户登录需要到本地的SAM数据库中做身份验证,而域用户如果在域内的客户机上登录,需要到AD数据库中作身份验证。我在这里仅以域用户为例来说明用户的详细的登录过程。

如果是你是域用户,在域内的客户机登录,必须选择登录到域,此时你的这台计算机会到DNS服务器上找到该域的DC是谁,由DC负责对用户的身份进行验证,如果验证通过,那么该用户就能正常登录。那么DC除了验证用户的是AD数据库中合法用户,到底还会做什么呢?

其实,当用户在本地登录到域时,DC验证用户身份通过后,会替用户建立一个访问令牌(Access Token),其中包含着该用户的SID及用户所属所有组的SID(关于通用组的SID,需要联系GC,当然如果该域的域功能级别如果是win2000 mixed,就不检查通用组情况。此外不管用户是否加入过通用组,该DC都将联系GC来检查)。如果DC能成功联系上GC,该用户的访问令牌正常生成,用户也就能顺利登录成功,如果此时联系不上GC,那该用户也就拿不到访问令牌,当然也就无法登录到域,这就是为什么我们会在上篇活动目录系列之五:单域环境的实现(多站点)下--优化 的原因。如下图所示:

用户系列之三:用户登录及访问资源的过程之访问令牌篇

如果用户拿到访问令牌,登录成功,你要是访问某台本域内计算机的共享资源时,则必须出示访问令牌。从而来决定用户将拥有何种权限来访问。

注意:因此当一个用户登录域后,你才将用户加入到某个组,因为用户的访问令牌中并不包含本组的SID,故有关本组的权限该用户也不会有。比如你创建共享并设置相应的该组的访问权限,其实该用户并不能访问,除非你让该用户重新登录再次生成访问令牌后方可。

下面讨论一下跨域资源的访问:用户user1属于A域,登录成功后,要访问B域资源。

用户user1登录A域成功,获得访问令牌,具备了访问该域资源的能力,但如果要访问B域资源,必须有B域的那台共享资源的计算机发送访问令牌。故该用户会依据信任路径,依次找到那台计算机所属域的GC,由那台GC发送给用户“服务票据”,用户拿着该票据,再到那台计算机上获得访问令牌。从而才能访问其共享资源。

注意:这个过程,User1会通过逐级访问GC,才能找到那个域的。

本文出自 “千山岛主之微软技术空间站” 博客,请务必保留此出处http://jary3000.blog.51cto.com/610705/122727

Tags:用户 系列 用户

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接