Powershell过滤未设置LAPS密码的计算机

时间:2017-01-18 10:56:08

标签: powershell active-directory

我最近在我们的域上部署了LAPS(本地管理员密码服务),现在想创建一个脚本,我可以运行该脚本来查找尚未与AD通信的机器,以安装组策略扩展并更新其本地管理员密码。

我可以看到,如果我跑:

Get-AdComputer -Identity Computer_Name -Properties *

我看到一台更新了密码的计算机,并显示了两个属性:

ms-Mcs-AdmPwd
ms-Mcs-AdmPwdExpirationTime

我的powershell不是很好,所以我的语法可能不对,但在尝试运行时:

Get-AdComputer -Filter {ms-Mcs-AdmPwd -ne ''}

我收到错误消息:

The search filter cannot be recognised

有人可以建议我如何过滤这两个属性吗?我是否必须管道进入Where-Object或甚至使用LDAP过滤器?

2 个答案:

答案 0 :(得分:0)

好的,我认为我的问题是与我一起寻找尚未设置的属性。

我怀疑可能会有一种更优雅的过滤方式,但下面对我来说效果很好:

 Get-ADComputer -Filter {ms-Mcs-AdmPwd -notlike "*"}

答案 1 :(得分:0)

如果我运行命令

Get-ADComputer -Filter {ms-Mcs-AdmPwd -notlike '<not set>'}

在我的2016 DC上的

我得到一个列表,其中包含所有设置了密码的计算机。