使用工具Csvde导出域中所有用户信息

Steven · 2021-02-10 11:28 · 32 views · Active Directory · old id 30

第1步:首先用脚本命令将AD用户信息导出,导的时候可以根据自己的需要,导出有用的用户信息,过滤掉不需要的信息。


csvde -d "ou=shanghai,DC=syinsh,DC=com" -r "(&(objectcategory=person)(objectClass=user))" -l "name,sAMAccountName,description,title,department,telephoneNumber,mail,userAccountControl" -f C:\Users-List.csv -s syinsh.com -u
	

脚本解释:

-d "ou=users,ou=XX公司,DC=XXXX,DC=Com"中ou是组织结构,ou=users,ou=XX公司代表的含义是XX公司 组织下的users组织,这是层级结构表示,命令行中由左至右对应层次中的由低至高。DC是域名,也是层级结构,DC=XXXX,DC=Com,表示Com下的XXXX也就是域名XXXX.com。比如abc.XXX.com对应DC=abc,DC=XXXX,DC=Com。


-r "(&(objectcategory=person)(objectClass=user))"是筛选要导出的数据,(objectClass=user)是定义大类,只导用户信息,但是AD的user 除了用户信息还包括computer等信息,所以再用(objectcategory=person)筛选,这样就只有用户信息了,如果这里省略就会导出所有AD信息相当乱。


-l "name,userPrincipalName"是需要导出用户信息具体字段,这里分别是名称和登录名,其它的字段可以参见下面图片。


-f C:\Users-List.csv 指的是导出文件路径,但是用户的中文信息会以16机制代码显示,所以后面加一个-u,但这也有弊端,加-u后导出数据就混在一列里,可以用excel的导入文本,以逗号分列功能分开即可。


-s servername 要绑定到的服务器(默认为计算机域的 DC)


补充说明一下userAccountControl参数,这个表示帐号状态,他的数值请参考下图:


← Back to home