为何不能交互式登陆?

为何不能交互式登陆(修正版)


                               刘纪恩

前言:

     自从这篇文章在计算机世界网站上发表之后,收到了几十封email,对这篇文章提出了宝贵的意见,由于我目前还处于半失业,所以一直没有对这篇文章做出相应的修改(如果哪位网友能提供一个工作机会,本人将不胜感激.....)但现在收到的email越来越多,不可能一一做答,只有把问题最多的几个地方在本文末尾的"疑问与解答"中整理出来,希望对各位有所帮助,谢谢.      

 

     前一段时间做了一个win2000的终端网,采用win2000 application server终端服务模式+citrix(sp3),客户机上出现登陆窗口,以域用户普通账号登陆便会出现提示:"计算机不允许交互式登陆",而用administrator登陆却没有问题,开始有点呐闷,这个问题怎么非本地账号登陆域服务器时出现的问题一样,后来查了一查资料,才明白过来。

   首先必须讲一讲NT和win2000的身份验证机制。NT和win2000针对域用户账号登陆的验证分别是通过NTLM和Kerberos协议,而对本地账号登陆的验证是MSV1_0协议,用户通过提供登陆信息(如用户名和密码),服务器将这些信息发送到服务器上的验证机构,验证机构通过比较储存在本地的数据库文件(SAM)来判断此用户的身份真实性,如果通过,就会向用户发送一个令牌,此访问令牌即token.在原来的NT模式下,由于域之间的信任关系是单向的,不可传递的,所以一个域用户要获得另一个域的资源访问权限,必须手工建立信任关系,授权该用户的访问权限。而在现在的win2000域模式下,每个用户的token是SID+域ID,即GUID,在一个森林中是永不变的,由每域的RID主机(相对关系主机)来分配的。SID在每个域中是独一无二的,但在其他域中也可能出现同样的SID,但是由于域ID的不同,所以二者的GUID就不可能相同。但这必须建立在Kerberos协议的基础上,kerberos提供了域之间可传递的,双向的信任关系,即A信任B,B信任A;A信任B,B信任C,A信任C。当然也可手工调整.一个用户仅仅具有一个token是不够的,token只能保证用户是否能在该域或本地计算机上的登陆权限,而用户是否能对资源的访问及系统权限是由ACL及ACE来控制的。ACL(Access control list)是每个文件及文件夹的用户组及用户访问控制列表,而ACE(Access control entry)是具体的访问类型(如read,write等等).

    再谈一谈针对win2000域环境下本地交互登陆的机制.众所周知,win2000对于用户登陆的验证采用的是kerberos协议,当一个本地用户登陆到域服务器,GINA(Graphical identification and authentication)图形标示符及身份验证Dll收到登陆请求,就会将其转发到LSA(本地权威机构),而在WIN2000下由于Kerberos是默认的验证机制,所以就请求kerberos来验证身份,而kerberos收到身份验证请求之后,便会出现错误信息,因为kerberos是用来验证域用户账号而非本地账号,此时LSA收到错误信息,会将其转发到GINA,GINA在将指定了MSV1_0协议的LSA来验证身份,如果通过则完成本地交互式登陆。
    说了这么多,到底跟终端用户登陆到服务器有什么关系.终端用户不是通过网络登陆吗?又不是本地登陆.终端顾名思义是客户通过键盘输入,发送指令到服务器,并没有大量的数据传送,最后通过客户机的显示器输出结果,实际上就是一个本地登陆的过程,所以采用的客户账号必须是本地账号。

    现在就给大家提供具体的解决办法:win2000的得意之作GPO,即group policy object,win2000把winNT要通过修改注册表或者运行poledit.exe修改Ntconfig.pol文件才能达到配置政策的目的,通过GPO来实现一个超强功能的中央集权的组政策,此政策是建立在活动目录(Active Directory)基础之上的,活动目录又是通过DNS来定位服务的。所以如果要使用GPO,就必须在安装完 WIN2000 SERVER+DNS之后,通过DCPROMO.EXE程序来安装活动目录后,才能使用GPO.安装完活动目录之后,点击开始-程序-管理工具-Active Directory用户和计算机,出现图1画面

 

   

   右击所在域控制器(本例是Domain Controllers)-属性-组政策,如图2所示(请特别注意这里,不是Default Domain Policy)

 

 

     点击选项,选中禁止覆盖入图3所示

 

    点击default domain controlers policy,选择编辑进入GPO窗口。选择计算机配置-windows设置-本地策略-用户权利指派(如图4)

    在允许本地登陆的选项上将终端用户所在的组添加上

 

    关闭所有窗口。打开win2000的命令处理窗口,运行secedit /refreshpolicy machine_policy,在事件查看器去看一下组政策是否已成功运用.最后在客户机上用已添加的终端用户账号就能成功登陆.留下我的EMAIL:owlbird@163.com,希望与热爱电脑技术的朋友共同进步,欢迎大家有空去访问我的网站:owlbird.xiloo.com

 

 

疑问与解答:

1. 
       请教你一个问题,我的服务器系统安装的是windows2000server+sp3,安装了域,工作安装的是windows2000professional,工作站系统安装好后,加入域后,能登陆域,但本机的用户不能登陆了,系统提示(此系统不允许本机采用交互式登陆)请问高手如何解决。谢谢!


回复:

      关于这个的问题,关键你要搞清组政策应用的权力大小。OU(组织单元)>域>网站>本机,由于你的win2000pro加入域后,如果要登陆到域,就必须有域服务器的账号,因为一旦加入了域,那么域组政策会覆盖掉客户机的本机组政策,如果你想添加某个账号必须在域服务器上添加这个账号,并允许其能够交互式登陆.这里请务必注意域的组政策不等于域服务器的组政策 如图5:右击所在域控制器(本例是wupanlan.com-属性-组政策)

 

2.

     我读了您的文章,可是我还是没搞清域服务器的组政策与域的组政策有什么不同?为什么做win2000终端时是Domain Controllers-属性-组政策,而profession客户机却是在wupanlan.com-属性-组政策.

回复:

     这个问题和上一个问题很类似,你必须明白终端模式与服务器-客户机模式的不同.一个是远程控制,一个是远程访问.远程控制时,相当于本机登陆到服务器,而远程访问时是以客户机的方式去登陆到服务器.

 

3.

     前几天因为碰到一个关于WINDOWS2000域环境下的交互式登陆问题 在您的指导下,我解决了用TERMINAL CLIENT无法交互式登陆的问题。不过,随即也引发了另一个问题,我的普通的工作站登陆WINDOWS 2000域时,无论用任何方法登陆,都提示“该系统的本地策略不允许交互式登陆”,就算我使用本里本地用户名登陆本机也会提示相同信息,也即我根本无法进入该机器的WINDOWS 2000 PRO 系统了。 但该情况似乎只发生在运行WINDOWS 2000 PRO的工作站上,因为在我的域环境里,同样也有WINDOWS XP的操作系统的工作站,那些工作站没有问题,可以正常登陆。一开始我以为确实是该工作站本地的策略有问题,而我又无法进入该工作站,最后选择了从新安装系统,但正如您猜测的,结果还是一样,正好在这个时候,另外一个WINDOWS 2000 PRO用户报告说他也有同样问题了,所以我就把设置该了回来,从起机器,一切有恢复正常。我对WINDOWS域环境下运行原理不是很熟悉,所以我想请问下您对这现象有过累世类似经历吗?谢谢!

回复:

         winxp没有组政策的相关设置,不受组政策的的影响,其余的问题请您再读一下我修正过的文章.

4.

      在允许本地登陆的选项卡上将一般用户添加上(其中一个用户的密码为空),却忘了将管理员添上。在终端客户机上登陆时没有显示登陆窗口就直接登上去了,为一般用户。希望大侠抽空帮忙解决,不胜感激!

回复:

         net user users(允许本地登陆的普通用户组)  administrator /add  


      最后我建议大家去买一本mcse制胜宝典<<windows 2000 active directory>>,清华出版社发行。

 

 

 

 

 

 

 

 


  • 0
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 0
    评论
60个Android开发精典案例 Android软件源码: 2-1(Activity生命周期) 3-1(Button与点击监听器) 3-10-1(列表之ArrayAdapter适配) 3-10-2(列表之SimpleAdapter适配) 3-11(Dialog对话框) 3-12-5(Activity跳转与操作) 3-12-6(横竖屏切换处理) 3-3(ImageButton图片按钮) 3-4(EditText文本编辑) 3-5(CheckBox与监听) 3-6(RadioButton与监听) 3-7(ProgressBar进度条) 3-8(SeekBar 拖动条) 3-9(Tab分页式菜单) 4-10(可视区域) 4-11-1(Animation动画) 4-11-2-1(动态位图) 4-11-2-2(帧动画) 4-11-2-3(剪切图动画) 4-13(操作游戏主角) 4-14-1(矩形碰撞) 4-14-2(圆形碰撞) 4-14-4(多矩形碰撞) 4-14-5(Region碰撞检测) 4-15-1(MediaPlayer音乐) 4-15-2(SoundPool音效) 4-16-1(游戏保存之SharedPreference) 4-16-2(游戏保存之Stream) 4-3(View游戏框架) 4-4(SurfaceView游戏框架) 4-7-1(贝塞尔曲线) 4-7-2(Canvas画布) 4-8(Paint画笔) 4-9(Bitmap位图渲染与操作) 5-1(飞行射击游戏实战) 6-1(360°平滑游戏摇杆) 6-10-1(Socket协议) 6-10-2(Http协议) 6-11(本地化与国际化) 6-2(多触点缩放位图) 6-3(触屏手势识别) 6-4(加速度传感器) 6-5(9patch工具)] 6-6(截屏) 6-8(游戏视图与系统组件) 6-9(蓝牙对战游戏) 7-10-1(遍历Body) 7-10-2(Body的m_userData) 7-11(为Body施加力) 7-12(Body碰撞监听) 7-13-1(距离关节) 7-13-2(旋转关节) 7-13-3(齿轮关节) 7-13-4(滑轮关节) 7-13-5-1(通过移动关节移动Body) 7-13-5-2(通过移动关节绑定两个Body动作) 7-13-6(鼠标关节-拖拽Body) 7-14(AABB获取Body) 7-4(Box2d物理世界) 7-5在物理世界中添加矩形) 7-7(添加自定义多边形) 7-9(在物理世界中添加圆形) 8-1(迷宫小球) 8-2(堆房子)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论

打赏作者

owlbirdwill

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值