您的位置:首页 > 大数据 > 人工智能

AD帐号批量导入导出

2015-09-13 16:43 561 查看
一、批量导入帐户
步骤及原理:
1、先用Excel表格做一个简单模版,将其保存为.csv格式!
2、再用For命令结合dsadd 来完成批量创建用户!

使用到的命令:(注:以下命令里参数为笔者做测试,别忘记修改!)
for /f "tokens=1,2,3,4,5 delims=," %a in (D:\USER1.csv) do dsadd user "cn=%c,ou=IT,dc=test,dc=com" -samid %d -upn %d -ln %a -fn %b -pwd %e -disabled yes -mustchpwd yes

以上命令简介:
tokens=1,2,3,4,5 :表示有五个变量(参数为表格内的5个参数,顺序为A/B/C/D/E 这5个参数下面会用到)
delims=, :表示分隔符为“,”
%a in (c:\baidu.csv):表示变量从路径“c:\baidu.csv”中取数据
dsadd :添加命令
cn=%c,ou=IT,dc=baidu,dc=com :表示所创建的用户名与创建位置
-samid %d -upn %d:表示登录名为变量d
-ln %a:设置用户姓为变量a
-fn %b:设置用户名为变量b
-pwd %e:设置密码为变量e
-disabled yes :表示导入以后为禁用状态
-mustchpwd yes:表示下次登录要修改密码, 默认值: no。

开始创建用户:
一、创建一个累似以下内容的表格





二、然后将其保存为.Csv格式

三、在AD上创建一个OU(IT),然后运行CMD,键入以下命令并执行:

for /f "tokens=1,2,3,4,5 delims=," %a in (d:\USER1.csv) do dsadd user "cn=%c,ou=IT,dc=test,dc=com" -samid %d -upn %d@test.com -fn %b -ln %a -pwd %e -disabled no -mustchpwd yes

二、使用CSVDE导出帐户
语法Csvde [-i] [-f FileName] [-s ServerName] [-c String1 String2] [-v] [-j Path] [-t PortNumber] [-d BaseDN] [-r LDAPFilter] [-p Scope] [-l LDAPAttributeList] [-o LDAPAttributeList] [-g] [-m] [-n] [-k] [-a UserDistinguishedName Password] [-b UserName Domain Password]参数-i 指定导入模式。如果没有指定,默认模式为导出。-f FileName 识别导入或导出文件名。-s ServerName 指定域控制器执行导入或导出操作。-c String1 String2将所有 String1项替换为 String2。从一个域将数据导入到另一个域以及导出域的可分辨名称 (String1) 需要替换为导入域的可分辨名称 (String2) 时普遍使用该操作。-v 设置 verbose 模式。-j Path 设置日志文件位置。默认路径为当前路径。-tPortNumber指定轻型目录访问协议 (LDAP) 端口号。默认 LDAP 端口为 389。全局编录端口为 3268。-dBaseDN为数据导出设置搜索库的可分辨名称。-rLDAPFilter为数据导出创建 LDAP 搜索筛选器。-pScope设置搜索范围。搜索范围选项为 Base、OneLevel 或 SubTree。-lLDAPAttributeList设置返回至导出查询结果中的属性列表。属性可由 LDAP 按任何顺序返回,CSVDE 不尝试进行任何列排序。如果省略该参数,则返回所有属性。-oLDAPAttributeList设置要从导出查询结果中省略的属性列表。从 Active Directory 中导出对象然后将对象导入到另一符合 LDAP 的目录中通常使用该方法。如果另一个目录不支持属性,您可以使用该选项从结果集中忽略属性。-g 忽略分页搜索。-m 忽略仅适用于 Active Directory 对象的属性,如 ObjectGUID、objectSID、pwdLastSet 和 samAccountType 属性。-n 忽略二进制值导出。-k 在导入操作期间忽略错误并继续处理。以下是可忽略错误的完整列表:“对象已经存在”、“约束冲突”和“属性或值已经存在”。-aUserDistinguishedName Password将该命令设置成使用提供的 UserDistinguishedName和 Password来运行。默认情况下,将使用当前登录到网络的用户的凭据运行该命令。此操作对用户名和密码进行了简单的 LDAP 绑定。-bUserName Domain Password将命令的运行方式设置为 UsernameDomainPassword。默认情况下,将使用当前登录到网络的用户的凭据运行该命令。此操作将 LDAP 与 NEGOTIATE 身份验证方法安全地绑定在一起。-?显示命令菜单。备注· 不能使用 csvde导入用户密码,因为密码必须通过加密通道发送。Csvde不支持安全套接字层 (SSL) 或加密 LDAP 通信。前面的密码参考与运行 csvde命令的用户的凭据相关。与用户的设置密码无关。

示例 使用 CSVDE 导出现有对象的列表相当简单。
最简单的用法是:
csvde –f ad.csv 将 Active Directory 对象导出到名为 ad.csv 的文件。–f 开关表示后面为输出文件的名称。
但是必须注意,上述的用法是很简单,但是导出来的结果可能存在太多你不希望要的记录和信息。
如果要实现更精确的导出记录,可以使用 -d 和 -r 以及 -l 参数。
其中:-d 用来指定特定的搜索位置和范围
-r 用来指定特定的搜索对象类型
-l 用来指定导出对象的具体属性
如:
csvde -f users.csv -d "ou=IT,dc=test,dc=com" -r "(&(objectcategory=person)(objectclass=user))" -l DN,objectClass,description

注意:如果使用CSVDE导出的帐户信息中存在中文,会存在乱码的可能,可以加-U参数来解决。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息