class QSslCertificateExtension#

QSslCertificateExtension类提供了访问X509证书扩展的API。 更多…

简介#

方法#

备注

此文档可能包含从C++自动翻译到Python的代码片段。我们总是欢迎对片段翻译的贡献。如果您发现翻译存在问题,也可以通过在https:/bugreports.qt.io/projects/PYSIDE上创建票据来让我们知道。

详细描述#

QSslCertificateExtension 提供了对存储在X509证书中的扩展的访问。可用的信息取决于所访问的扩展类型。

所有X509证书扩展都具有以下属性

属性

描述

name

扩展的人类可读名称,例如。‘basicConstraints’。

criticality

这是一个布尔值,表示如果扩展是正确解释证书的必要条件。

oid

指定这是哪个扩展的ASN.1对象标识符。

supported

如果为true,则扩展值的结构在Qt版本间不会更改。

value

具有取决于扩展类型的数据结构的QVariant。

虽然此类提供对任何类型的扩展的访问,但只有某些扩展的返回格式在版本间保证保持不变。只有当这种情况发生时,isSupported() 方法才会返回 true。

当前支持的扩展及其返回值的结构如下

名称

OID

详细信息

basicConstraints

2.5.29.19

作为QVariantMap返回。键‘ca’包含一个布尔值,可选键‘pathLenConstraint’包含一个整数。

authorityInfoAccess

1.3.6.1.5.5.7.1.1

作为QVariantMap返回。对每个访问方法都有一个键,其值是一个URI。

subjectKeyIdentifier

2.5.29.14

作为包含QString的QVariant返回。字符串是密钥标识符。

authorityKeyIdentifier

2.5.29.35

作为QVariantMap返回。可选键‘keyid’包含作为QByteArray存储的十六进制字符串密钥标识符。可选键’serial’包含作为qlonglong的授权密钥序列号。目前没有支持此扩展的一般名称字段。

除了上述支持的扩展外,其他许多常见扩展将以合理的方式返回。SSL后端完全不支持的扩展将返回为QByteArray。

有关证书可以包含的扩展类型的信息,请参阅RFC 5280。

另见

extensions()

__init__()#

构建一个QSslCertificateExtension

__init__(other)
参数:

otherQSslCertificateExtension

构建一个 other 的副本。

isCritical()#
返回类型:

bool

返回扩展的严重性。

isSupported()#
返回类型:

bool

如果此扩展受支持,则返回true。在这种情况下,受支持只是意味着由 value() 访问器返回的QVariant的结构将在版本之间保持不变。不受支持的扩展可以自由使用,但是无法保证在版本之间返回的数据结构将相同。

name()#
返回类型:

str

返回扩展的名称。如果不知道扩展的名称,则返回OID。

oid()#
返回类型:

str

返回此扩展的ASN.1 OID。

swap(other)#
参数:

otherQSslCertificateExtension

将此证书扩展实例与 other 交换。此函数非常快速且从不失败。

value()#
返回类型:

对象

返回扩展的值。返回值的结构取决于扩展类型。