【发布时间】:2017-09-29 17:52:06
【问题描述】:
那里有教程显示,如何将属性(例如subjectAltName-extension)添加到证书签名请求 (CSR)。例如,这是我在创建 CSR 时枚举有效别名的方式:
aliases.each do |a|
alist << ("DNS:#{a}")
alist << ("IP:#{a}") if IPAddress.valid? a
end
extension = OpenSSL::X509::ExtensionFactory.new.create_extension(
'subjectAltName',
alist.join(', '),
false
)
csr.add_attribute OpenSSL::X509::Attribute.new(
'extReq',
OpenSSL::ASN1::Set.new(
[OpenSSL::ASN1::Sequence.new([extension])]
)
)
但是,假设我想读取来自现有 CSR 的任何此类属性(例如从磁盘读取的内容)?没有get_attribute方法……有没有直接从Request-object获取原始列表(如DNS:meow, DNS:127.0.0.1, IP:127.0.0.1)的方法?
【问题讨论】: