Spec-Zone.ru › Qt 6.0

Класс QSslCertificateExtension

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

Заголовок: #include <QSslCertificateExtension>
CMake: find_package(Qt6 COMPONENTS Network REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Network)
qmake: QT += network
С момента: 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-6.0/qsslcertificateextension.html

Spec-Zone.ru

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