Spec-Zone.ru › Qt 5.12

Класс QSslCertificateExtension

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

Заголовок: #include <QSslCertificateExtension>
qmake: QT += network
С момента: Qt 5.0
  • Список всех членов, включая унаследованные

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

Публичные функции

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

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

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

QSslCertificateExtension предоставляет доступ к расширению, хранящемуся в сертификате X509. Доступная информация зависит от типа расширения, к которому осуществляется доступ.

Все расширения сертификатов X509 имеют следующие свойства:

Свойство Описание
name Человекопонятное имя расширения, например, 'basicConstraints'.
criticality Это логическое значение, указывающее, является ли расширение критическим для правильной интерпретации сертификата.
oid Идентификатор объекта ASN.1, который определяет это расширение.
supported Если это значение истинно, структура значения расширения не изменится между версиями 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()

Создает QSslCertificateExtension.

QSslCertificateExtension::QSslCertificateExtension(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

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

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

Оператор перемещающего присваивания.

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

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

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

Spec-Zone.ru

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