批量导入的方法:
把用户信息在Excel文档里面整理好,然后再用命令或者脚本导入到AD里面。
首先从人事部门拿到一份员工的名册的excel表格
对我们来说,重要的是姓名和工号,部门这3个。当然对于AD管理员来说用户账户的信息越详细越好
下面我们来编辑这些资料:
首先增加2列,登录名和密码
然后把表格另存为C:aduserdata.csv (在DC上)
把csv的文件关闭
在以管理员身份运行CMD
For do 的命令格式和参数
FOR命令循环执行dsadd命令,这个 for 程序体的语句引用 %a 来取得第一个符号,
引用 %b 来取得第二个符号从%a~%z,如果你的文
档里有5列分别是1~5的值,那变量%a就是1,依此往下推,命令行示范如下:
for /f "skip=1 eol=; tokens=1-9 delims=, " %a in (c:ADuserdata.csv)
do dsadd user cn=%a,cn=users,dc=sample,dc=net
-upn %b@sample.net -samid %b -pwd %c -fn %e -ln %d -dept %f
-office %g -title %h -email %i -mustchpwd yes -disabled yes
参数含义: skip=1跳过第一行数据 eol=;注释行开始字符为";" tokens=1-9
每次提取1-9个变量 delims=, 分割符号为","
结果报错,找不到文件。原因是CSV在打开的情况下,无法被命令读取,关闭再运行命令就OK
打开ADUC就能看到
我们打开任何一个用户,查看属性
测试OK,全部创建成功
其实有工作经验的人就会发现,其实上面创建的是有问题的
没有划分OU,以后运行GPO怎么办?
一般情况下,我们导入用户前会事先创建好组织结构的OU
比如上海总部和上海子公司,如下图
建议ou的名字用英文比较好,中文有时候会有乱码,编辑的时候比较麻烦。
如果按上面的方法做必须把每个部门的员工做成一个CSV文件
下面我们先做总公司人事的账户,另存为C:SHHQHRUSER.CSV
用for do 的命令时添加相应的OU选择即可
测试OK,
:)哪怕给我5K的用户也不愁了。
DSADD USER语法
dsadd user UserDN [-samid SAMName] [-upn UPN] [-fn FirstName] [-mi Initial] [-ln LastName]
[-display DisplayName] [-empid EmployeeID] [-pwd {Password | *}] [-desc Description]
[-memberof Group;...] [-office Office] [-tel PhoneNumber] [-email Email] [-hometel HomePhoneNumber]
[-pager PagerNumber] [-mobile CellPhoneNumber] [-fax FaxNumber] [-iptel IPPhoneNumber]
[-webpg WebPage] [-title Title] [-dept Department] [-company Company] [-mgr Manager]
[-hmdir HomeDirectory] [-hmdrv DriveLetter:] [-profile ProfilePath] [-loscr ScriptPath]
[-mustchpwd {yes | no}] [-canchpwd {yes | no}] [-reversiblepwd {yes | no}] [-pwdneverexpires {yes | no}]
[-acctexpires NumberOfDays] [-disabled {yes | no}] [{-s Server | -d Domain}] [-u UserName]
[-p {Password | *}] [-q] [{-uc | -uco | -uci}]