2012-03-20 57 views
0

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

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" 

,但没有成功。

有谁知道如何做到这一点?

感谢您的帮助!

回答

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") 
+0

对不起,我已经有点更清晰的那些 - $ D1和$ d2是这样计算的:$ d1 =(Get-Date).ToShortDateString()($ d2就是加上指定的警告天数)。 – mexell 2012-03-20 14:29:29

+0

所以这不是令我担心的日期,而是注册标志。 – mexell 2012-03-20 14:30:54

0

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

你需要什么补充的是-restrict“enrollmentflags = 0”

他们是被的arent自动注册