快速业务通道

用vbs从本地 Administrators 组中删除组

作者 佚名 来源 ASP编程 浏览 发布时间 2013-07-09
问:
您好,脚本专家!如何从本地Administrators组中删除组?
--SB
答:
您好,SB。有一位脚本专家还隐约记得早年一部名为Branded的电视节目,节目中的主人公(由查克·康纳斯扮演)被指控为懦夫并被不光彩地从美国骑兵队开除。差不多所有脚本专家都记得它的开头部分:骑兵队扯掉该士兵制服上的肩章并将它的剑一折两断,然后令其耻辱地快步走出要塞。
为何要忆起这一幕?没有什么真正的原因,我们只是认为如果每当将用户或组从本地Administrators组中删除时都举行类似的仪式会很酷。不过,在这种理想实现之前,可以使用与以下类似的脚本将组(此例中为ActiveDirectory组)从本地Administrators组中删除:
复制代码 代码如下:

strComputer="atl-fs-01"
SetobjAdmins=GetObject("WinNT://"&strComputer&"/Administrators")
SetobjGroup=GetObject("WinNT://fabrikam/finance")
objAdmins.Remove(objGroup.ADsPath)

是的,这非常简单,不是吗?此脚本首先会将计算机的名称(在本例中为atl-fs-01)赋值给名为strComputer的变量。然后,我们就可以使用下面这行代码绑定到该计算机上的本地Administrators组:
SetobjAdmins=GetObject("WinNT://"&strComputer&"/Administrators")
获得对Administrators组的对象引用后,我们的下一个任务便是创建另一个对象引用,它是对将删除的组的引用。下面这行代码就用来完成该任务:
SetobjGroup=GetObject("WinNT://fabrikam/finance")
请注意,引用组帐户时我们使用老式的WindowsNT式命名约定:fabrikam/finance。为什么会是这样?很简单:为对本地用户和组进行操作,我们不得不使用WinNT提供程序。WinNT提供程序不明白ActiveDirectory术语,对于与以下类似的对象路径摸不着头脑:
cn=FinanceUsers,ou=Finance,dc=fabrikam,dc=com
因此,我们不得不退一步采用老式的帐户名:域名/登录名。但是没关系:所幸ActiveDirectory也明白此命名约定。当我们请求帐户fabrikam/finance时,ActiveDirectory对我们的言语知道得一清二楚。
注意:此问题以前提出过,但值得再次提出:是的,您可以使用WinNT提供程序访问ActiveDirectory中的对象。而且,对象路径要简单得多,这没错。但请不要冒险行事:请仅在绝对必要的情况下使用WinNT提供程序。为什么这么说呢?好吧,举一个例子,就用户帐户而言,通常在与ActiveDirectory协作时使用的LDAP提供程序支持超过200个属性;而WinNT提供程序仅支持约20个属性。LDAP提供程序要强大得多、有用得多。
获得对组的对象引用后,我们所要做的全部工作便是调用Remove方法,将该组从本地Administrators组中删除:
objAdmins.Remove(objGroup.ADsPath)
我们仍然认为撕掉该人衬衣上的口袋保护袋,然后用膝盖折断他的订书机会更酷,但这已经可以达到目的。
当然,您要删除的组可能不是ActiveDirectory组,而可能是本地组。这会成为问题吗?不会;实际上还要简单一点儿。只需直接绑定到本地机上的组帐户,然后将它删除:
strComputer="atl-fs-01"
SetobjAdmins=GetObject("WinNT://"&strComputer&"/Administrators")
SetobjGroup=GetObject("WinNT://finance")
objAdmins.Remove(objGroup.ADsPath)
顺便说一句,从一个组中删除另一个组的过程与从一个组中删除用户的过程完全相同:绑定到目标组(此例中为本地Administrators组),绑定到要删除的对象(无论是组还是用户,都没有关系),然后调用Remove方法,将要删除帐户的ADsPath作为唯一参数进行传递。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号