利用CSVDE和DSADD实现AD帐号批量导入导出

简介:  作为域管理员,有时我们需要批量地向AD域中添加用户帐户,这些用户帐户既有一些相同的属性,又有一些不同属性。
 作为域管理员,有时我们需要批量地向AD域中添加用户帐户,这些用户帐户既有一些相同的属性,又有一些不同属性。如果在图形界面逐个添加、设置,那么需要的时间和人力会超出能够承受范围。一般来说,如果不超过10个,我们可利用AD用户帐户复制来实现。如果再多的话,就应该考虑使用使用命令行工具,实现批量导入导出对象。微软默认提供了两个批量导入导出工具,分别是CSVDE(CSV目录交换)和LDIFDE(LDAP数据互换格式目录交换)。
   具体选择上述哪个工具取决于需要完成的任务。如果需要创建对象,那么既可以使用CSVDE,也可以使用LDIFDE,如果需要修改或删除对象,则必须使用LDIFDE。本文不涉及使用CSVDE导入对象。而是换另一种导入导出AD帐户思路:使用CSVDE工具导出AD帐户到CSV格式的文件中,再使用For语句读取该文件,使用DSADD命令进行批量添加。
  
   具体步骤:
   一:使用CSVDE导出帐户
   使用 CSVDE 导出现有对象的列表相当简单。
   最简单的用法是:
    csvde –f ad.csv  将 Active Directory 对象导出到名为 ad.csv 的文件。–f 开关表示后面为输出文件的名称。
    但是必须注意,上述的用法是很简单,但是导出来的结果可能存在太多你不希望要的记录和信息。
    如果要实现更精确的导出记录,可以使用 -d 和 -r 以及 -l 参数。
    其中:-d 用来指定特定的搜索位置和范围
          -r 用来指定特定的搜索对象类型
          -l 用来指定导出对象的具体属性
    如:
      csvde –f users.csv –d "ou=Users,dc=contoso,dc=com" –r       "(&(objectcategory=person)(objectclass=user))" –l DN,objectClass,description
    注意:如果使用CSVDE导出的帐户信息中存在中文,会存在乱码的可能,可以加-U参数来解决。
   二:批量导入帐户
    首先需要明确的概念是,要实现批量导入帐户,必须要存在一个已包括多个帐户信息的文件。没有文件,无法实现批量导入。
    假设之前已经通过CSVDE工具导出过这样的一个文件Users.csv,且文件内容如下
   
    姓 名   全名   登录名      密码
    张,三,  张三,  three.zhang,pass01
    李,四,  李四,  four.li,    passo2
    王,五,  王五,  five.wang,  pass03
    刘,六,  刘六,  six.liu,    passo4
    赵,七,  赵七,  seven.zhao, pass05
  
    有了上述格式的文件后,我们就可以使用For命令来读取文件中的每条信息并利用DSADD实现帐号添加。
    具体语句如下:
    C:\>for /f "tokens=1,2,3,4,5 delims=," %a in (uses.csv) do dsadd user "cn=%c,ou=
        newusers,dc=contoso,dc=com" -samid %d -upn % d@contoso.com -fn
        %b -ln %a -pwd %e -disabled no
    作用:将上述文件中五个帐户添加到contoso.com域,名为newusers的OU中,且默认已启用用户。
          其中:-samid为登录名
                -upn为UPN登录名
                -fn为 名
                -ln为 姓
                -pwd为 密码
              
    简单解释一下for语句
        /f 表示从文件中读取信息
        tokens表示每行使用的记号,对应于后面的变量具体的值
        delims表示每个字段之间的分隔符
目录
相关文章
|
Docker 容器
docker pull 镜像下载报错解决方法
docker pull 镜像下载报错解决方法
1574 0
docker pull 镜像下载报错解决方法
|
虚拟化
ESXI 与 OPNSense 配合
国庆期间在家里更新曾经购买的设备,将曾经的单系统,加固为防火墙,多系统的网络架构,如下图: 网络架构 在 ESXI 系统中默认存在一个 vSwitch0 交换机,且其不能被修改名称,因此在此通过修改其对应绑定的上行网卡即可,具体如下: 设置 vSwitch0 上行链路 将 vmnic 0 (网口 1) 设置为 WAN 网接入口,设置为 VM Network 上行链路: 修改vSwitch0 上行链路 注意:在没有添加新 vSwitch 时,VM Network 被设置为默认网口类型。
3962 0
|
10月前
|
算法 数据安全/隐私保护
基于ADRC自抗扰算法的UAV飞行姿态控制系统simulink建模与仿真
本课题基于ADRC自抗扰算法,使用MATLAB2022a在Simulink中建模与仿真UAV飞行姿态控制系统,分别对偏航(Yaw)、俯仰(Pitch)和滚转(Roll)进行控制。ADRC通过扩展状态观测器(ESO)实时估计并抵消扰动,结合非线性反馈控制策略,减少了对精确模型的依赖,增强了系统的鲁棒性和适应性。仿真结果显示该方法能有效实现UAV的姿态控制,确保其在复杂环境中的稳定飞行和精确操控。
|
存储 运维 应用服务中间件
【实用经验分享】JumpServer部署教训:避免自信陷阱,谨慎行事
本文是关于使用JumpServer作为堡垒机进行服务器运维管理的经验分享。作者讲述了选择JumpServer的背景、从2.5.0版本升级到2.9.2版本的过程,以及在大厦断电后重新部署服务时遇到的挑战。文章详细描述了解决nginx和https配置问题的方法,并强调了在部署过程中保持谨慎、利用官方文档以及社区支持的重要性。最后,作者提到了数据迁移的问题,指出虽然旧数据无法直接融合到新版本中,但通过手动重新添加,能够顺利完成数据迁移。
715 2
【实用经验分享】JumpServer部署教训:避免自信陷阱,谨慎行事
|
NoSQL 测试技术 PHP
新手从事直播软件源码开发搭建经验与技巧
新手技术从事直播软件源码开发,从需求调研、技术架构、功能逻辑、技术语言、压力测试等全面剖析。
|
监控 安全 数据安全/隐私保护
特权账号的安全和风险管理
在日常账号管理中,特权账号风险无处不在。无论是蓄意破坏的“外部人员”,还是粗心大意或心怀不满的“内部人员”,都会对您的核心业务造成严重破坏。无论哪种情况,管理不善的特权凭证和账号都是常见的漏洞。
515 0
特权账号的安全和风险管理
|
SQL 存储 Java
Hive 中的 SerDe 详解
【8月更文挑战第31天】
1113 1
|
关系型数据库 MySQL Linux
在Linux中,如何配置邮件服务器?
在Linux中,如何配置邮件服务器?
|
Ubuntu Linux 网络安全
在Ubuntu 18.04上添加和删除用户的方法
在Ubuntu 18.04上添加和删除用户的方法
273 0