欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

win2008r2 AD用户账户的批量导入方法

程序员文章站 2023-03-25 23:38:53
如何导入大批量的用户账户?是我们在2008r2安装搭建好之后需要考虑的一件事情。 方法就是把用户信息在excel文档里面整理好,然后再用命令或者脚本导入到ad里面。 当...

如何导入大批量的用户账户?是我们在2008r2安装搭建好之后需要考虑的一件事情。

方法就是把用户信息在excel文档里面整理好,然后再用命令或者脚本导入到ad里面。

当然,方法是越简单越好,需要我们修改的越少越好。

我们首先从人事部门拿到一份员工的名册的excel表格

win2008r2 AD用户账户的批量导入方法

对我们来说,重要的是姓名和工号,部门这3个。当然对于ad管理员来说用户账户的信息越详细越好

下面我们来编辑这些资料:

首先增加2列,登录名和密码

win2008r2 AD用户账户的批量导入方法

然后把表格另存为c:\\aduserdata.csv (在dc上)

win2008r2 AD用户账户的批量导入方法

把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=, 分割符号为","

win2008r2 AD用户账户的批量导入方法

结果报错,找不到文件。原因是csv在打开的情况下,无法被命令读取,关闭再运行命令就ok

win2008r2 AD用户账户的批量导入方法

打开aduc就能看到

win2008r2 AD用户账户的批量导入方法

我们打开任何一个用户,查看属性

win2008r2 AD用户账户的批量导入方法

win2008r2 AD用户账户的批量导入方法

win2008r2 AD用户账户的批量导入方法

测试ok,全部创建成功

其实有工作经验的人就会发现,其实上面创建的是有问题的

没有划分ou,以后运行gpo怎么办?

一般情况下,我们导入用户前会事先创建好组织结构的ou

比如上海总部和上海子公司,如下图

建议ou的名字用英文比较好,中文有时候会有乱码,编辑的时候比较麻烦。

win2008r2 AD用户账户的批量导入方法

如果按上面的方法做必须把每个部门的员工做成一个csv文件

下面我们先做总公司人事的账户,另存为c:\\shhqhruser.csv

用for do 的命令时添加相应的ou选择即可

win2008r2 AD用户账户的批量导入方法

win2008r2 AD用户账户的批量导入方法

测试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}]