Q6、在AD域中,如何批量添加域用户帐号?
作为网管,有时我们需要批量地向AD域中添加用户帐户,这些用户帐户既有一些相同的属性,又有一些不同属性。如果逐个添加、设置的话,十分地麻烦。一般来说,如果不超 过10个,我们可利用AD用户帐户复制来实现。如果再多的话,我们就应该考虑使用csvde.exe或ldifde.exe来减轻我们的工作量了。最后简单介绍一下利用脚本(可利用循环功能)批量创建用户帐号
一、AD用户帐户复制
1、在“AD域和计算机”中建一个作为样板的用户,如S1。
2、设置相关需要的选项,如所属的用户组、登录时间、用户下次登录时需更改密码等。
3、在S1上/右键/复制,输入名字和口令。
说明:
只有AD域用户帐户才可以复制,对于本地用户帐户无此功能。
帐户复制可将在样板用户帐户设置的大多数属性带过来。具体如下:
|
选项卡 |
复制到新用户帐号的属性 |
|
常规 |
无。 |
|
地址 |
除了“街道”之外所有 |
|
帐户 |
除了“用户登录名”之外所有 |
|
配置文件 |
除“配置文件路径”和“主文件夹”。欲复制它们,应该使用%username%变量,如:\\server\share\%username% |
|
电话 |
无 |
|
单位 |
除了“职务”之外所有。 |
|
隶属于 |
全部 |
|
拨入 |
无,将默认值应用于新帐户。 |
|
环境 |
无,将默认值应用于新帐户。 |
|
会话 |
无,将默认值应用于新帐户。 |
|
远程控制 |
无,将默认值应用于新帐户。 |
|
终端服务配置文件 |
无,将默认值应用于新帐户。 |
二、比较csvde与ldifde
|
|
csvde逗号分隔符目录交换 |
ldifde轻型目录访问协议互换格式目录交换 |
|
功能 |
只能用来添加对象,不能用于删除/修改 |
可用于添加/删除/修改对象 |
|
格式 |
字段名1,字段名2,字段名3,…… 记录1此值,记录1此值,记录1此值,…… |
字段名1: 记录1此值 字段名2: 记录1此值 字段名3: 记录1此值 …… |
|
举例 |
Dn,objectclass,samaccountname, userprincipalname,useraccountcontrol “cn=s1,ou=test,dc=mcse,dc=com”,user,s1 s1@mcse.com,512 |
Dn: cn=s1,ou=test,dc=mcse,dc=com Objectclass:user Samaccountname:s1 Userprincipalname:s1@mcse.com useraccountcontrol:512 |
|
共同点 |
用于导入的文本文件必须包含: 用户帐号的OU,对象的类型以及用户登录名的路径,用户主名 默认(即不指定时):用户帐户为禁用。启用:512,禁用:514 可包含个人信息,但不可包含密码,只能用默认的空口令。 或通过设pwdLastSet字段值为0,使“用户下次登录时须更改密码”(不设这个字段,默认也是如此)。 通过设userAccountControl字段值为66048,可使“密码永不过期”。 | |
三、以csvde.exe为例说明:域用户帐户的导出/导入
操作步骤如下:
在“AD域和计算机”中建一个用户,如S1。
设置相关需要的选项,如所属的用户组、登录时间、用户下次登录时需更改密码等。
在DC上,开始/运行:cmd
键入:csvde –f demo.csv
说明:
(1)不要试图将这个文件导回,来验证是否好使。因为这个文件中的好多字段在导入时是不允许用的,如:ObjectGUID、objectSID、pwdLastSet 和 samAccountType 等属性。我们导出这个文件目的只是为了查看相应的字段名是什么,其值应该怎么写,出错信息如下:
|
objectGUID:写 |
UNPRINTABLEBINARY(16) |
"由于安全原因不允许修改。" |
|
objectSid:写 |
UNPRINTABLEBINARY(28) |
"由于该属性处于“安全帐户管理器” (SAM),不允许访问该属性。" |
(2)可通过-d –r参数指定导出范围和对象类型。例如:
-d “ou=test,dc=mcse,dc=com” 或 -d “cn=users,dc=mcse,dc=com” |
以上面的文件为参考基础,创建自己的my.csv,并利用复制、粘贴、修改得到多条记录。例如:
dn,objectClass,sAMAccountName,userAccountControl,userPrincipalName |
其它可用字段,我试了一下,见下表(不全):
|
用户帐户属性 |
字符名 |
说明 |
|
“常规”标签 | ||
|
姓 |
Sn |
|
|
名 |
Givename |
|
|
英文缩写 |
Initials |
|
|
显示名称 |
displayName |
|
|
描述 |
Description |
|
|
办公室 |
physicalDeliveryOfficeName |
|
|
电话号码 |
telephoneNumber |
|
|
电话号码:其它 |
otherTelephone |
多个以英文分号分隔 |
|
电子邮件 |
Mail |
|
|
网页 |
wWWHomePage |
|
|
网页:其它 |
url |
多个以英文分号分隔 |
|
“地址”标签 | ||
|
国家/地区 |
C |
如:中国CN,英国GB |
|
省/自治区 |
St |
|
|
市/县 |
L |
|
|
街道 |
streetAddress |
|
|
邮政信箱 |
postOfficeBox |
|
|
邮政编码 |
postalCode |
|
|
“帐户”标签 | ||
|
用户登录名 |
userPrincipalName |
形如:S1@mcse.com |
|
用户登录名(以前版本) |
sAMAccountName |
形如:S1 |
|
登录时间 |
logonHours |
见注释1 |
|
登录到 |
userWorkstations |
多个以英文逗号分隔 |
|
用户帐户控制 |
userAccountControl |
启用:512,禁用:514,66048 |
|
帐户过期 |
accountExpires |
|
|
“配置文件”标签 | ||
|
配置文件路径 |
profilePath |
|
|
登录脚本 |
scriptPath |
|
|
主文件夹:本地路径 |
homeDirectory |
|
|
连接 |
homeDrive |
|
|
到 |
homeDirectory |
|
|
“电话”标签 | ||
|
家庭电话 |
homePhone |
若是其它,均在前面加other,如otherhomePhone 多个以英文分号分隔 |
|
寻呼机 |
Pager | |
|
移动电话 |
mobile, othermobil | |
|
传真 |
FacsimileTelephoneNumber | |
|
IP电话 |
ipPhone | |
|
注释 |
Info | |
|
“单位”标签 | ||
|
职务 |
Title |
|
|
部门 |
Department |
|
|
公司 |
Company |
|
|
“隶属于”标签 | ||
|
隶属于 |
memberOf |
用户组的DN不需使用引号,多个用分号分隔 |
|
“拨入”标签 | ||
|
远程访问权限(拨入或VPN) |
msNPAllowDialin |
|
|
允许访问 |
值:TRUE |
|
|
拒绝访问 |
值:FALSE |
|
|
回拨选项 |
msRADIUSServiceType |
|
|
由呼叫方设置或回拨到 |
值:4 |
|
|
总是回拨到 |
msRADIUSCallbackNumber |
|
|
“环境”、“会话”、 | ||