2、设置相关需要的选项,如所属的用户组、登录时间、用户下次登录时需更改密码等。 3、在 S1 上/右键/复制,输入名字和口令。 说明: 1、 只有 AD 域用户帐户才可以复制,对于本地用户帐户无此功能。 2、 帐户复制可将在样板用户帐户设置的大多数属性带过来。具体如下: 二、比较 csvde 与 ldifde 三、以 csvde.exe 为例说明:域用户帐户的导出/导入 操作步骤如下: 1、 在“AD 域和
计算机”中建一个用户,如 S1。 2、 设置相关需要的选项, 如所属的用户组、 登录时间、 用户下次登录时需更改密码等。 3、 在 DC 上,开始/运行:cmd 4、 键入:csvde –f demo.csv 说明: (1)不要试图将这个文件导回,来验证是否好使。因为这个文件中的好多字段在导入时是 不允许用的,如:ObjectGUID、objectSID、pwdLastSet 和 samAccountType 等属性。我们 导出这个文件目的只是为了查看相应的字段名是什么,其值应该怎么写,出错信息如下: (2)可通过-d –r 参数指定导出范围和对象类型。例如: -d “ou=test,dc=mcse,dc=com” 或 -d “cn=users,dc=mcse,dc=com” -r “< Objectclass=user>” 1、 以上面的文件为参考基础,创建自己的 my.csv,并利用复制、粘贴、修改得到多条 记录。例如: dn,objectClass,sAMAccountName,userAccountControl,userPrincipalName "CN=s1,OU=test,DC=mcse,DC=com",user,S1,512,S1@mcse "CN=s2,OU=test,DC=mcse,DC=com",user,S2,512,S2@mcse ………………,其它可用字段,我试了一下,见下表(不全) : 6、导入到 AD,键入 csvde –i –f my.csv
–j c:\ 说明: 用于设置日志文件位置, -j 默认为当前路径。 此选项可帮助用户在导入不成功时排错。 有一点大家必须明确的是:我们在这里做 AD 域用户帐户复制、做 AD 域用户帐户的导出/ 导入,并不能代替“AD 备份和恢复” 。我们只是在批量创建用户帐号,帐号的 SID 都是重 新生成的,权利权限都得重新设才行。 (当然我们可以把导入的用户,通过 memberof 字段
设到一些用户组中去,使它有权利权限。但这与利用“AD 备份和恢复”到原状,完全是两 回事) 。 四、利用脚本创建批量用户帐户 1、利用脚本创建用户帐号(用户可参考下例) 。 Set objDomain = GetObject("LDAP://dc=fabrikam,dc=com") Set objOU = objDomain.Create("organizationalUnit", "ou=Management") objOU.SetInfo 说明:在 fabrikam 域创建一个名叫 Management 的 OU。 Set objOU = GetObject("LDAP://OU=Management,dc=fabrikam,dc=com") Set objUser = objOU.Create("User", "cn= AckermanPila") objUser.Put "sAMAccountName", "AckermanPila" objUser.SetInfo objUser.SetPassword "i5A2sj*!" objUser.AccountDisabled = FALSE objUser.SetInfo 说明:在 Management OU 下创建一个名叫 AckermanPila 的用户,口令为 i5A2sj*!,启用。 Set objOU = GetObject("LDAP://OU=Management,dc=fabrikam,dc=com") Set objGroup = objOU.Create("Group", "cn=atl-users") objGroup.Put "sAMAccountName", "atl-users" objGroup.SetInfo objGroup.Add objUser.ADSPath objGroup.SetInfo 说明:在 Management OU 下创建一个名叫 atl-users 的用户组,将用户 AckermanPila 加入到 这个组中。 Wscript.echo "Script ended successfully" 说明:显示“脚本成功结束”信息 2、利用脚本中的循环功能实现批量创建用户帐号 Set objRootDSE = GetObject("LDAP://rootDSE") Set objContainer = GetObject("LDAP://cn=Users," &; _ objRootDSE.Get("defaultNamingContext")) For i = 1 To 1000 Set objUser = objContainer.Create("User", "cn=UserNo" &; i) objUser.Put "sAMAccountName", "UserNo" &; i objUser.SetInfo objUser.SetPass
word "i5A2sj*!" objUser.AccountDisabled = FALS