假设我有一个 CSR,其中某些Subject字段不是根据 X.509 创建的 - Subject中有禁止字符,或者Country被提供为“England”。
有什么办法可以从中恢复吗?
我试过了:
- 使用policy.inf重新签署证书,但我找不到任何方法来更改现有主题
- 直接在 CA 上编辑请求,但由于 CSR 中有一些禁止的内容,请求立即失败,并且使用certutil -setattributes导致“CERTSRV_E_BAD_REQUESTSUBJECT”(有点预期,但有点奇怪,因为您可以尝试重新发出请求“失败”列表)。
我认为在这里“修复”糟糕的 CSR 是不可能的,但也许我错了?
假设您对请求使用标准格式 - 而且您必须使用 ADCS - 只有两个地方可以更改证书请求的主题(或任何其他属性或扩展名):
您不能在生成证书请求和 CA 接受它之间更改证书请求,因为它是数字签名的。任何更改都会使签名无效。
如果 CA 不接受请求,您唯一的选择是返回源。