Auf dieser Seite

QSslCertificateExtension Class

Die Klasse „QSslCertificateExtension“ bietet eine API für den Zugriff auf die Erweiterungen eines X.509-Zertifikats. Mehr...

Header: #include <QSslCertificateExtension>
CMake: find_package(Qt6 REQUIRED COMPONENTS Network)
target_link_libraries(mytarget PRIVATE Qt6::Network)
qmake: QT += network

Hinweis: Alle Funktionen dieser Klasse sind reentrant.

Öffentliche Funktionen

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=(const QSslCertificateExtension &other)

Ausführliche Beschreibung

QSslCertificateExtension ermöglicht den Zugriff auf eine in einem X509-Zertifikat gespeicherte Erweiterung. Die verfügbaren Informationen hängen vom Typ der Erweiterung ab, auf die zugegriffen wird.

Alle X.509-Zertifikatserweiterungen weisen die folgenden Eigenschaften auf:

EigenschaftBeschreibung
nameDer für Menschen lesbare Name der Erweiterung, z. B. „basicConstraints“.
KritikalitätDies ist ein boolescher Wert, der angibt, ob die Erweiterung für die korrekte Interpretation des Zertifikats entscheidend ist.
oidDer ASN.1-Objektbezeichner, der angibt, um welche Erweiterung es sich handelt.
unterstütztIst dieser Wert „true“, ändert sich die Struktur des Werts der Erweiterung nicht zwischen verschiedenen Qt-Versionen.
valueEin ` QVariant ` mit einer vom Typ der Erweiterung abhängigen Struktur.

Obwohl diese Klasse Zugriff auf jede Art von Erweiterung bietet, wird nur für einige garantiert, dass sie in einem Format zurückgegeben werden, das zwischen den Releases unverändert bleibt. Die Methode ` isSupported()` gibt ` true ` für Erweiterungen zurück, bei denen dies der Fall ist.

Die derzeit unterstützten Erweiterungen und die Struktur des zurückgegebenen Werts lauten wie folgt:

NameOIDDetails
basicConstraints2.5.29.19Wird als „ QVariantMap “ zurückgegeben. Der Schlüssel „ca“ enthält einen booleschen Wert, der optionale Schlüssel „pathLenConstraint“ enthält eine Ganzzahl.
authorityInfoAccess1.3.6.1.5.5.7.1.1Wird als „ QVariantMap “ zurückgegeben. Für jede Zugriffsmethode gibt es einen Schlüssel, dessen Wert eine URI ist.
subjectKeyIdentifier2.5.29.14Wird als „ QVariant “ zurückgegeben, der einen „ QString “ enthält. Die Zeichenkette ist die Schlüsselkennung.
authorityKeyIdentifier2.5.29.35Wird als „ QVariantMap “ zurückgegeben. Der optionale Schlüssel „keyid“ enthält die Schlüsselkennung als Hexadezimalzeichenfolge, die in einem „ QByteArray “ gespeichert ist. Der optionale Schlüssel „serial“ enthält die Seriennummer des Autoritätsschlüssels als „qlonglong“. Derzeit wird das Feld „general names“ dieser Erweiterung nicht unterstützt.

Zusätzlich zu den oben genannten unterstützten Erweiterungen werden viele weitere gängige Erweiterungen in einer übersichtlichen Struktur zurückgegeben. Erweiterungen, die vom SSL-Backend überhaupt nicht unterstützt werden, werden als „ QByteArray “ zurückgegeben.

Weitere Informationen zu den Arten von Erweiterungen, die Zertifikate enthalten können, finden Sie in RFC 5280.

Siehe auch ` QSslCertificate::extensions()`.

Dokumentation der Mitgliedsfunktionen

QSslCertificateExtension::QSslCertificateExtension()

Erstellt eine „QSslCertificateExtension“.

QSslCertificateExtension::QSslCertificateExtension(const QSslCertificateExtension &other)

Erstellt eine Kopie von „ other “.

[noexcept] QSslCertificateExtension::~QSslCertificateExtension()

Löscht die Erweiterung.

bool QSslCertificateExtension::isCritical() const

Gibt den Kritikalitätsgrad der Erweiterung zurück.

bool QSslCertificateExtension::isSupported() const

Gibt „true“ zurück, wenn diese Erweiterung unterstützt wird. In diesem Fall bedeutet „unterstützt“ lediglich, dass die Struktur des vom Accessor ` value()` zurückgegebenen ` QVariant ` zwischen den Versionen unverändert bleibt. Nicht unterstützte Erweiterungen können frei verwendet werden, es gibt jedoch keine Garantie dafür, dass die zurückgegebenen Daten zwischen den Versionen dieselbe Struktur aufweisen.

QString QSslCertificateExtension::name() const

Gibt den Namen der Erweiterung zurück. Ist kein Name für die Erweiterung bekannt, wird die OID zurückgegeben.

QString QSslCertificateExtension::oid() const

Gibt die ASN.1-OID dieser Erweiterung zurück.

[noexcept] void QSslCertificateExtension::swap(QSslCertificateExtension &other)

Ersetzt diese Instanz der Zertifikatserweiterung durch „ other “. Dieser Vorgang ist sehr schnell und schlägt niemals fehl.

QVariant QSslCertificateExtension::value() const

Gibt den Wert der Erweiterung zurück. Die Struktur des zurückgegebenen Werts hängt vom Typ der Erweiterung ab.

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

Weist dieser Erweiterung „ other “ zu und gibt eine Referenz auf diese Erweiterung zurück.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.