PySide6.QtNetwork.QSslCertificateExtension¶
- class QSslCertificateExtension¶
QSslCertificateExtension类提供了一个用于访问X509证书扩展的API。更多…概要¶
方法¶
def
__init__()def
isCritical()def
isSupported()def
name()def
oid()def
swap()def
value()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
QSslCertificateExtension提供了对存储在X509证书中的扩展的访问。可用的信息取决于所访问的扩展类型。所有X509证书扩展具有以下属性:
属性
描述
name
扩展的人类可读名称,例如‘basicConstraints’。
criticality
这是一个布尔值,指示扩展对于正确解释证书是否至关重要。
oid
指定此扩展的ASN.1对象标识符。
支持
如果为真,扩展值的结构在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中找到。
另请参阅
- __init__()¶
构造一个
QSslCertificateExtension。- __init__(other)
- Parameters:
构造
other的副本。- isCritical()¶
- Return type:
布尔
返回扩展的关键性。
- isSupported()¶
- Return type:
布尔
如果支持此扩展,则返回true。在这种情况下,支持仅意味着由
value()访问器返回的QVariant的结构在版本之间将保持不变。不支持的扩展可以自由使用,但不能保证返回的数据在版本之间具有相同的结构。- name()¶
- Return type:
字符串
返回扩展的名称。如果扩展没有已知的名称,则将返回OID。
- oid()¶
- Return type:
字符串
返回此扩展的ASN.1 OID。
- swap(other)¶
- Parameters:
将此证书扩展实例与
other交换。此函数非常快且永远不会失败。- value()¶
- Return type:
对象
返回扩展的值。返回值的结构取决于扩展类型。