目录
一、查询密码过期域账号信息
(一)根据OU组织架构查询密码过期账号
(二)查询域控所有密码过期账号
(三)导出dsquery查询的信息
二、批量修改过期域账号密码
(一)根据dsquery查询到的账号批量修改密码
1. 域控所有180天未修改密码账号重置密码为ABcd00
2. 组织架构里所有180天未修改密码账号重置密码为ABcd00
三、批量修改指定域账号的自定义密码
在域控管理的过程中,员工们不按提示定期修改密码,电脑也没加域,会面临大量修改密码的工作。
为了减轻密码修改的工作,暂时想到两个思路解决:1. 查出来哪些账号即将过期,批量修改,并将账号通过脚本通过企业协同平台发到他通讯账号上,此方法适用于协同平台与域账号不集成,比如企业微信。2. 由各单位整理密码过期人员名单,批量修改,此方法对已经整理好的密码过期账号效率高。
一、查询密码过期域账号信息
命令:dsquery user
(一)根据OU组织架构查询密码过期账号
假设密码是180天过期,使用命令dsquery配合-stalepwd参数查询:
dsquery user OU -stalepwd 天数
例:查询test组织架构下180天未修改密码的用户
dsquery user ou=test,dc=china,dc=com -stalepwd 180
(二)查询域控所有密码过期账号
dsquery user domainroot -stalepwd 180 //查找根域下面180天没有修改密码的用户
(三)导出dsquery查询的信息
dsquery user domainroot -stalepwd 180 >>C:\adusers.csv
二、批量修改过期域账号密码
命令:dsmod user -pwd 密码
(一)根据dsquery查询到的账号批量修改密码
1. 域控所有180天未修改密码账号重置密码为ABcd00
dsquery user domainroot -stalepwd 180 | dsmod user -pwd ABcd00
2. 组织架构里所有180天未修改密码账号重置密码为ABcd00
dsquery user ou=test,dc=china,dc=com -stalepwd 180 | dsmod user -pwd ABcd00
三、批量修改指定域账号的自定义密码
将收集账号信息user.csv文件上传到域控服务器,这一步是需要传参账号sAMAccountName和密码password
执行修改密码批处理,批处理具体命令如下
$userlist=import-csv -path user.csv foreach($user in $userlist) { dsmod user (dsquery user -samid $userlist.sAMAccountName) -pwd $userlist.password }
user.csv的格式如下,sAMAcountName和Password必须要,其他可根据自己需求添加,文件编码为Unicode