1、 查询AD中,默认的密码策略

如果接手一个新的AD环境,需要了解其密码策略如果,或是你忘了你所在组织AD的密码策略,我们一会去组策略管理控制台去查看,但有了PowerShell,会变得很简单,只需一个CMDLET: Get-ADDefaultDomainPasswordPolicy

分享几个AD管理中常用的PowerShell命令_第1张图片

密码复杂性要注、锁定策略、密码长度、密码有效时间等,可以全部显示出来!

2、 查询AD中,那些用户被选中了“密码永不过期”的选顶

在域管理中,我们一般都会配置一些策略,设置用户密码30天或是90天过期,强制修改密码,但有时,可能会在创建用户时,不小心选中了“密码永不过期”的选顶,这对信息安全来说,是不被允许的,或是说一个不安全的因素,如果通过AD管理工具去检查每个用户,是一个很繁琐的工具,但如果我们利用PowerShell,就可以很方便的一次性查询出AD中所有勾选了“密码记不过期”选顶的用户!

Get-ADUser -Filter 'PasswordNeverExpires -eq $true' -Server DCHostname | select name

将DChostname修改为你域的其中一台DC的主机名

分享几个AD管理中常用的PowerShell命令_第2张图片

如果你的AD组织足够大,一次性会显示所有AD中的的用户,如果只查询某个指OU下的,可以加入限定条件,如:

-searchbase ' OU=test,DC=Youdomain,DC=COM '

将OU=Test修改为你其中一个OU的名字,将DC=Youdomain,DC=COM改为你的域名,如我的域名为szmaxcent.com.cn,我要查东莞分公司用户所在OU:

Get-ADUser -searchbase ' OU=Dongguan,DC=szmaxcent,DC=COM,DC=CN ' -Filter 'PasswordNeverExpires -eq $true' -Server DC001 | select name

3、 查询AD中,已锁定的用户

如果某些用户因为密码问题导致账号锁定,我们也可以用PowerShell来查看当前域中,有那些账号是锁定状态:

get-aduser -filter * -properties * | where {$_.lockedout} | ft name,lockedout

分享几个AD管理中常用的PowerShell命令_第3张图片

当然,上面命令也可以参考上面加上限定条件,来指定OU!

如果需要查询某个账号是否锁定:

get-aduser johnsonxiang -properties * | ft name,lockedout

分享几个AD管理中常用的PowerShell命令_第4张图片

如果红色方框显示为False,为正常状态,如果为Ture,即已锁定!

如果要对已经锁定的账号解锁,直接用:Unlock-ADAccount -Identity johnsonxiang,当然前提是你要有对此锁定解锁的权限!

4、 查询AD中,成员为空AD组(针对用户)

AD组织用久了,创建组越来越多,很多组已经没有任何成员了,也行不会再使用,我们可以将这些组找出来,如果确认不用的话,再将其删除!

用PowerShell,可以很方便的,一次性将这些组全部列出来,命令如下:

Get-ADGroup -Filter * -Properties Members | where { -not $_.Members} | select Name

同样,你也可以参考上面的语句,在前面加上限定条件,来查询指定OU