0

我想使用 Certreq.exe 命令创建证书请求。要开始一个新请求,我需要强制的 inf 文件。

有我的问题,我需要一个创建的 inf 文件,除了正常的变量(CN、O、OU、Provider、长度...)与我在 IIS GUI 上创建 Cert Crequest 完全相同。

我的问题是,有没有办法找出MS使用的“标准”关键参数是什么,或者我可以从已经创建的证书中得到这个(我知道证书详细信息,不需要所有信息)?

谢谢

4

1 回答 1

3

如果要获取有关现有 IIS SSL 证书的信息,可以使用命令

certutil -v -store my

这将显示(可能是所有)信息,您需要为certreq主题、SubjectAlternativeName、扩展名、可导出标志和 CSP 名称制作 inf 文件。

Inf 文件看起来像(取自此处

[Version]
Signature="$Windows NT$"

[NewRequest]
;Change to your,country code, company name and common name
Subject = "C=US, O=Example Co, CN=something.example.com"

KeySpec = 1
KeyLength = 2048
Exportable = TRUE
MachineKeySet = TRUE
SMIME = False
PrivateKeyArchive = FALSE
UserProtected = FALSE
UseExistingKeySet = FALSE
ProviderName = "Microsoft RSA SChannel Cryptographic Provider"
ProviderType = 12
RequestType = PKCS10
KeyUsage = 0xa0

[EnhancedKeyUsageExtension]
OID=1.3.6.1.5.5.7.3.1 ; this is for Server Authentication / Token Signing

要生成请求,您将运行命令

certreq -new request.inf request.csr

并发request.csr送给 CA 以颁发证书。CA 可能会使用您的证书请求中的所有信息,但并非必须如此,即它可能会更改扩展名,例如增强密钥使用并添加 botClient AuthenticationServer Authentication.

于 2017-09-05T21:00:02.297 回答