过滤非自动注册证书的Certutil.exe输出

时间:2012-03-20 10:36:42

标签: powershell filter windows-server-2008-r2 ca

我正在使用a script by Tom Nolan来查询我们的CA是否过期证书。但是,我试图过滤非自动注册证书的输出,因为这些是唯一感兴趣的。这就是问题所在:

certutil -view -restrict "NotAfter>=$d1,NotAfter<=$d2" -out "Request ID, Request Submission Date, Request Common Name, Requester Name, Request Email Address, Request Distinguished Name, CertificateTemplate, NotAfter" -config "$caServer\$caName"

我尝试缩小-restrict参数,如下所示:

-restrict "NotAfter>=$d1,NotAfter<=$d2,EnrollmentFlags&&0x20"

但没有成功。

有谁知道如何实现这个目标?

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

Certutil对日期时间格式非常挑剔,因此可能会导致一些问题。尝试并指定一种显式格式,如下所示:

# $sd, $ed are datetimes
certutil -view -restrict "NotAfter>={0},NotAfter<={1}" -f $sd.toString("d.M.yyyy H:mm"), $ed.toString("d.M.yyyy H:mm")

答案 1 :(得分:0)

这是一个旧的,但仍然可以帮助某人。

您需要添加的是-restrict“enrollment flags = 0p>

他们是那些没有自动注册的人