您的位置:首页 > 职场人生

使用脚本自动创建AD中的层次化结构容器及对象 推荐

2009-01-14 16:57 549 查看
新年伊始,万象更新。借用在年终总结里的第一句话。2009年了,继续更新BLOG。今年初准备更新2个大主题,1是WINSERVER相关的一些东西,包括2008、应用技巧、部署及各种工具等;2是OCS2007从规划到部署的系列文档,BLOG中已经更新过一些零散的文章,准备将OCS相关写全,整理出一套完整的配置文档。2月份要发布R2版本了,希望对大家有帮助。
不知各位博友在部署AD用户、组和OU时采用哪种形式。比较常见的是使用Csvde和Ldifde工具以及脚本生成。但是通过工作中的实际应用发现他们或多或少都存在一些问题。使用命令行工具修改脚本繁琐,功能上有限制以及不能创建OU和组;而使用普通的脚本很难满足要求,自己编写又对使用者的编程技巧有较高要求。
那有没有一种方法可以解决上面这些问题呢?
这就是今天BOLG的内容,整个过程只使用DSADD命令以及一个循环语句,使用者可以通过简单的修改完成包括创建组织单元、分组、账户、设定账户密码、增加账户信息等工作。最近给一个2000多人用户的机构创建用户效果很好,而且使用这个方法还有一个好处,创建过程中可以标示组织中重名的用户账户。要知道在AD中不止每个用户的SID是唯一的,账户的登陆名也是唯一。一个实际的经验是,200人以上的AD账户重名几率会呈几何形状增长。2000人大概有150个账户会发生冲突。
在介绍最终的脚本以前先简单介绍一下Dsadd命令,这个命令是windows2003及2008中自带的系统工具,所以使用时不需要安装SK和RK之类的工具集即可使用,除了Dsadd以外DS还包括其他一些列命令如,Dsget dsmov dsmod dsquery等命令。我会另写文章介绍
1.第一个例子,最简单的应用,创建单个OU,在AD中对象都存在某个容器或者对象中。在创建AD层级结构时我们也是先创建OU然后再向OU中添加账户



说明:添加OU ITpro,我们可以根据需要创建嵌套的多层OU

2.第二个例子,创建单个组,方便以后使用脚本直接将用户加到组里,所以这个也要先创建出来



说明:创建ITPro用户组

3.第三个例子,创建单个用户,upn为90375




4.第四个例子,通过上面3个例子各位博友已经大概了解了DSADD命令的使用,在这个例子里我加入了一些
开关,定义一些状态和信息,大家可以可以根据需要增加账户部门等信息



说明:创建dongjun用户 显示名为董君 密码为password01! 首次登陆必须修改密码并自动加入ITPro组
一些常见的开关大家可以使用-?参数或者搜索一下其他文章介绍,甚至可以通过ADSIEDIT工具查看




AD用户和计算机中刚刚添加的对象



5.批量添加用户
通过上面的介绍,大家可以发现,这是命令的使用还是非常简单的,那如何才能达到自动创建所有用户和组织结构的目标呢?在这里我们还需要借助一个for循环已经tokens参数,下面是脚本内容:




说明:第一部分前2行不介绍了,大家可以直接看下张效果图;第3,4行创建一个名称为IT的OU并在其中嵌套创建ITPro子OU;第4行在ITPro这个OU中创建ITPro用户组。
第二部分前2行不做介绍,看下图。最后的命令使用tokens将ITPro.txt中每一行中的第一个和第二个字符传递给for语句进行处理,第一个字符及第二个字符之间用,隔开

dong1 董一
dong2 董二
dong3 董三
dong4 董四
dong1 董一

命令处理过程,因为有重名,所以可以看到报错提示




处理后ADUC中的结果~


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  职场 windows 休闲
相关文章推荐