QSslCertificateExtension 提供对存储在 X509 证书中的扩展的访问。可用信息取决于正在访问的扩展类型。
所有 X509 证书扩展都具有以下属性:
- name:QString类型。扩展名。
- criticality:bool类型,指示扩展的关键程度(拓展是否对正确解释证书至关重要)。
- oid:QString类型。扩展的 ASN.1 对象标识符。
- supported:bool类型,为true则扩展值的结构不会在 Qt 版本之间改变。
- value:QVariant类型,扩展名的值,其值的结构取决于扩展类型。
目前支持的扩展,返回值value的结构如下:
- basicConstraints:作为 QVariantMap 返回。
键 'ca' 包含一个布尔值。
可选键 'pathLenConstraint' 包含一个整数。 - authorityInfoAccess:作为 QVariantMap 返回。每个访问方法都有一个键,值是一个 URI。
- subjectKeyIdentifier:作为包含 QString 的 QVariant 返回。该字符串是密钥标识符。
- authorityKeyIdentifier:作为 QVariantMap 返回。
可选密钥“keyid”包含密钥标识符作为存储在 QByteArray 中的十六进制字符串。
可选密钥“serial”包含作为 qlonglong 的授权密钥序列号。
除了上面支持的扩展之外,许多其他常见的扩展将以合理的结构化方式返回。 SSL 后端根本不支持的扩展将作为 QByteArray 返回。