我在 Windows Server 2019 上有一个独立的根 CA核。
我知道certutil.exe -dump certificate.req
我可以检查 CSR,但是根 CA 的策略可能会覆盖请求的扩展属性。
在桌面版上,将 CSR 导入根 CA 后,我可以检查待处理的请求,并查看根 CA 策略可能在哪里覆盖请求的扩展属性、添加其他扩展或删除它们。
例如,CSR 请求密钥使用扩展为关键,但根 CA 策略会覆盖密钥使用请求并删除关键标志,如下图所示。
我的问题是:
- 如何在命令行或 PowerShell 中将 CSR 文件导入待处理请求队列?
- 我如何才能看到 CA 实际上是如何颁发证书的(在命令行上还是在 PowerShell 中)?
答案1
要将 CSR 导入队列,请使用:
certreq.exe -submit <csr file>
要查看请求扩展,您需要知道RequestId
上述命令将返回的。使用(对于的 RequestId 123
):
certutil.exe -view -restrict "ExtensionRequestId=123" Ext
查看请求属性:
certutil.exe -view -restrict "AttributeRequestId=123" Attrib
在此过程中,您可以使用以下命令查看请求本身:
certutil.exe -view -restrict "RequestId=123" Queue
或者,对于以前颁发的证书:
certutil.exe -view -restrict "RequestId=123" Log
您可以-v
在之后添加-view
以获取更详细的信息,也可以csv
在末尾添加以获取 CSV 输出。