| 网站首页 | 新闻中心 | 系统安全 | 网络安全 | 安全技术 | 下载中心 | 
课件制作网.
收藏本站
设为首页
安全365
如何列出 Active Directory 中 Computer 类使用的所有属性?
如何列出 Active Directory 中 Computer 类使用的所有属性?
作者:佚名 文章来源:不详 点击数: 更新时间:2007-1-24 10:57:20
问:

嗨,脚本专家!如何列出 Active Directory 中 Computer 类使用的所有属性?

-- KP

答:

您好,KP。多谢您的问题。关于回答,是的,没错,由我们中的一名脚本专家执教的 Colt 联盟棒球队柯克兰火焰队在上周末赢得了市冠军,漂亮地获得了早已是该队囊中之物的常规赛冠军。还有,这场锦标赛的最终比分确实 13-0。我们还可以为您做些什么?

哦,对了:您的脚本编写问题。(对于不熟悉脚本编写的人,编写脚本是我们用来在棒球赛间隙打发时间的事。)很明显,有一位脚本专家今天并未完全集中精力做自己的工作(尽管我们不知道今天为什么可以是个例外),不过,幸运的是您的问题很容易回答:毕竟,ADSI(用于访问 Active Directory 的脚本编写技术)很酷的一点就是您可以编写 ADSI 脚本,让它来告诉您使用 ADSI 可以编写哪些脚本。例如,此脚本将返回 Computer 类使用的所有属性的名称:

Set objSchema = GetObject("LDAP://schema/computer")

 

Wscript.Echo "Mandatory attributes"



For Each strAttribute in objSchema.MandatoryProperties

    Wscript.Echo strAttribute

Next

 

Wscript.Echo



Wscript.Echo "Optional attributes"



For Each strAttribute in objSchema.OptionalProperties

    Wscript.Echo strAttribute

Next

此脚本首先连接到本地域的 schema,接着绑定 Computer 类。(schema 当然就是主列表,其中详细列出可以存储在 Active Directory 的所有类和其他对象,并列出这些项的所有属性和方法。)做到这一步时,我们会得到 IADsClass 对象的一个实例;正如其名所示,IADsClass 含有关于特定 Active Directory 类的信息。如果需要关于 User 类的信息该怎么办?如果这样,我们可以改为绑定到该类:

Set objSchema = GetObject("LDAP://schema/user")

如果需要关于 organizationalUnit 类的信息,可以使用以下代码:

Set objSchema = GetObject("LDAP://schema/organizationalUnit")

是的,很酷。

因为 IADsClass 是一个类,它有自己的属性集,包括MandatoryPropertiesOptionalProperties。MandatoryProperties 表示类的每个实例必须拥有的属性(本例为 Computer 类)。对 Active Directory 运行此脚本时即可得到以下必需属性的列表:

cn

instanceType

nTSecurityDescriptor

objectCategory

objectClass

objectSid

sAMAccountName

这些属性的多数都自动由 Active Directory 赋值,但有几个除外 - 如 cnsAMAccountName。这意味着创建新 Computer 对象时,您必须自己给它们赋值;如果您遗漏了一个,比如 sAMAccountName,您的脚本就会无效。

如您所料,MandatoryProperties 存储为数组(因为可能而且将会有多个必需属性);因此我们使用 For Each 循环遍历所有属性,回显每个属性名:

For Each strAttribute in objSchema.MandatoryProperties

    Wscript.Echo strAttribute

Next

解答基本上就是这么多了。对 OptionalProperties(Computer 对象可以拥有但并非必须拥有的属性)进行同样的操作,然后任务即告完成。

顺便说一句,如果您查看计算机的可选属性列表,您会看到各种古怪项目。传呼机?家庭电话号码?有多少计算机有自己的传呼机或家庭电话号呢?信不信由您,这相当正常:究其原因是因为 Computer 类由 User 类派生而来。这意味着 Computer 类具有 User 类的所有属性,外加一些特定于计算机的其他属性,如操作系统版本。如果您看到一些与计算机相关的古怪属性 - 姓名缩写?秘书?- 好的,请不必但心。毕竟这些是可选属性,如果您不愿意,可以不管它们。

希望对您有所帮助,KP。好了,谁还想再听些关于柯克兰火焰队的事?有人吗?喂?喂?

【转自世纪安全网 http://www.21safe.com】
文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
     
     
     
    CSO们如何应对新技术的安
    普通企业如何应对黑客攻
    企业该如何防范由VoIP引
    浅谈IT如何实现企业的应
    黑客与正规企业是如何串
    如何无限制申请Gmail 2.
    企业如何避免人为因素的
    社会工程学:如何利用黑客
    如何在一个文件被添加到
    如何将“珊瑚虫”好友请

    Copyright © 2006-2008 www.anquan365.com 安全365
    建议使用1024*768分辨率及第三方浏览器对本站进行浏览