Spec-Zone.ru › Qt 5.15

Класс QSslCertificateExtension

Класс QSslCertificateExtension предоставляет API для доступа к расширениям сертификата X509. Подробнее...

Заголовок: #include <QSslCertificateExtension>
qmake: QT += network
С тех пор: Qt 5.0

Этот класс был представлен в Qt 5.0.

  • Список всех членов, включая унаследованные

Примечание: Все функции в этом классе являются многопоточными.

Открытые функции

QSslCertificateExtension(const QSslCertificateExtension &other)
QSslCertificateExtension()
QSslCertificateExtension & operator=(const QSslCertificateExtension &other)
~QSslCertificateExtension()
bool isCritical() const
bool isSupported() const
QString name() const
QString oid() const
void swap(QSslCertificateExtension &other)
QVariant value() const

Подробное описание

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 Возвращается как QVariant, содержащий QString. Строка — это идентификатор ключа.
authorityKeyIdentifier 2.5.29.35 Возвращается как QVariantMap. Необязательный ключ 'keyid' содержит идентификатор ключа как шестнадцатеричную строку, хранящуюся в QByteArray. Необязательный ключ 'serial' содержит порядковый номер ключа авторизации как qlonglong. В настоящее время нет поддержки поля общих имен этого расширения.

Помимо поддерживаемых расширений, многие другие распространенные расширения будут возвращаться в достаточно структурированном виде. Расширения, для которых у SSL-бекенда нет вообще поддержки, будут возвращаться как QByteArray.

Дополнительную информацию о типах расширений, которые могут содержать сертификаты, можно найти в RFC 5280.

См. такжеQSslCertificate::extensions().

Документация функций-членов

QSslCertificateExtension::QSslCertificateExtension(const QSslCertificateExtension &other)

Создаёт копию other.

QSslCertificateExtension::QSslCertificateExtension()

Создаёт QSslCertificateExtension.

QSslCertificateExtension &QSslCertificateExtension::operator=(const QSslCertificateExtension &other)

Присваивает other этому расширению и возвращает ссылку на это расширение.

QSslCertificateExtension::~QSslCertificateExtension()

Удаляет расширение.

bool QSslCertificateExtension::isCritical() const

Возвращает критичность расширения.

bool QSslCertificateExtension::isSupported() const

Возвращает true, если это расширение поддерживается. В этом случае поддерживаемость означает, что структура QVariant, возвращаемая методом value(), останется неизменной между версиями. Неподдерживаемые расширения могут быть использованы свободно, однако нет гарантии, что возвращаемые данные будут иметь одинаковую структуру между версиями.

QString QSslCertificateExtension::name() const

Возвращает имя расширения. Если имя расширения неизвестно, возвращается OID.

QString QSslCertificateExtension::oid() const

Возвращает ASN.1 OID этого расширения.

void QSslCertificateExtension::swap(QSslCertificateExtension &other)

Меняет местами экземпляры этого расширения сертификата и other. Эта функция очень быстрая и никогда не терпит неудачу.

QVariant QSslCertificateExtension::value() const

Возвращает значение расширения. Структура возвращаемого значения зависит от типа расширения.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qsslcertificateextension.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API