我正在使用powershell脚本通过certreq创建证书签名请求(CSR)。我需要文件中的私钥,但脚本不会生成私钥。我尝试查看certreq和其他资源的文档,但什么也没有找到。在INF设置中,我设置Exportable = TRUE。以下是设置
$settingsInf = "
[Version]
Signature=`"`$Windows NT`$
[NewRequest]
KeyLength = 2048
Exportable = TRUE
MachineKeySet = TRUE
SMIME = FALSE
RequestType = PKCS10
ProviderName = `"Microsoft RSA SChannel Cryptographic Provider`"
ProviderType = 12
HashAlgorithm = sha256
;Variables
Subject = `"CN={{CN}},CN={{CN2}},O={{O}},DC={{DC}},DC={{DC2}}`"
[Extensions]
{{SAN}}我尝试的另一个解决方案是使用openssl来获取私钥和CSR。在这个解决方案中,我同时获得了私钥和CSR,但是当我向CA提交CSR时,它抛出以下错误
"message" : "Invalid Subject DN. The requested Subject DN is not compatible with the issuing CA.",我正在使用openssl,如下所示
$subject = "`"/CN=$cn/CN=$cn2/O=$o/DC=$dc/DC=$dc2'"
openssl req -new -key $privateKeyPath -rand $randPath -subj $subject -out $csrPath证书颁发机构DN如下
"issuer_dn" : "CN=usa,O=SE,DC=abc,DC=com",使用certreq获取私钥的任何建议,或者使用openssl时CA抛出错误的原因。谢谢
发布于 2020-06-25 23:40:34
我找到了解决方案。也许这会对别人有所帮助。
看起来有些CA需要特定顺序的主题,这是没有文档记录的(超级烦人)。
CA I所连接到的需要$subject的方式如下
$subject = "`"/DC=$dc2/DC=$dc/O=$o/CN=$cn2/CN=$cn'"CA接受在生成CSR时使用这样的主题。
https://stackoverflow.com/questions/62568642
复制相似问题