QSslCertificateExtension Class
Die Klasse QSslCertificateExtension bietet eine API für den Zugriff auf die Erweiterungen eines X509-Zertifikats. Mehr...
Header: | #include <QSslCertificateExtension> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Network) target_link_libraries(mytarget PRIVATE Qt6::Network) |
qmake: | QT += network |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- QSslCertificateExtension ist Teil der Netzwerk-Programmierschnittstelle und der implizit gemeinsam genutzten Klassen (Implicitly Shared Classes).
Hinweis: Alle Funktionen in 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) |
Detaillierte Beschreibung
QSslCertificateExtension ermöglicht den Zugriff auf eine in einem X509-Zertifikat gespeicherte Erweiterung. Die verfügbaren Informationen hängen von der Art der Erweiterung ab, auf die zugegriffen wird.
Alle X509-Zertifikatserweiterungen haben die folgenden Eigenschaften:
Eigenschaft | Beschreibung |
---|---|
name | Der von Menschen lesbare Name der Erweiterung, z. B. "basicConstraints". |
Kritikalität | Dies ist ein boolescher Wert, der angibt, ob die Erweiterung für die korrekte Interpretation des Zertifikats entscheidend ist. |
oid | Der ASN.1-Objektbezeichner, der angibt, um welche Erweiterung es sich handelt. |
Unterstützt | Wenn dies wahr ist, ändert sich die Struktur des Wertes der Erweiterung nicht zwischen Qt-Versionen. |
Wert | Eine QVariant mit einer Struktur, die vom Typ der Erweiterung abhängt. |
Während diese Klasse den Zugriff auf jede Art von Erweiterung ermöglicht, wird nur bei einigen garantiert, dass sie in einem Format zurückgegeben werden, das zwischen verschiedenen Versionen 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 Wertes sind wie folgt:
Name | OID | Einzelheiten |
---|---|---|
basicConstraints | 2.5.29.19 | Wird als QVariantMap zurückgegeben. Der Schlüssel "ca" enthält einen booleschen Wert, der optionale Schlüssel "pathLenConstraint" enthält eine ganze Zahl. |
authorityInfoAccess | 1.3.6.1.5.5.7.1.1 | Wird als QVariantMap zurückgegeben. Es gibt einen Schlüssel für jede Zugriffsmethode, wobei der Wert ein URI ist. |
subjectKeyIdentifier | 2.5.29.14 | Wird als QVariant mit einer QString zurückgegeben. Die Zeichenkette ist der Schlüsselbezeichner. |
authorityKeyIdentifier | 2.5.29.35 | Wird als QVariantMap zurückgegeben. Der optionale Schlüssel "keyid" enthält die Schlüsselkennung als Hex-String, der in einem QByteArray gespeichert ist. Der optionale Schlüssel "serial" enthält die Seriennummer des Behördenschlüssels als qlonglong. Derzeit gibt es keine Unterstützung für das allgemeine Namensfeld dieser Erweiterung. |
Zusätzlich zu den oben genannten unterstützten Erweiterungen werden viele andere gebräuchliche Erweiterungen in einer vernünftig strukturierten Weise zurückgegeben. Erweiterungen, für die das SSL-Backend keine Unterstützung bietet, werden als QByteArray zurückgegeben.
Weitere Informationen über die Arten von Erweiterungen, die Zertifikate enthalten können, finden Sie in RFC 5280.
Siehe auch QSslCertificate::extensions().
Dokumentation der Mitgliedsfunktionen
QSslCertificateExtension::QSslCertificateExtension()
Konstruiert eine QSslCertificateExtension.
QSslCertificateExtension::QSslCertificateExtension(const QSslCertificateExtension &other)
Konstruiert eine Kopie von other.
[noexcept]
QSslCertificateExtension::~QSslCertificateExtension()
Zerstört die Erweiterung.
bool QSslCertificateExtension::isCritical() const
Gibt die Kritikalität der Erweiterung zurück.
bool QSslCertificateExtension::isSupported() const
Gibt den Wert true zurück, wenn diese Erweiterung unterstützt wird. In diesem Fall bedeutet "unterstützt" einfach, dass die Struktur von QVariant, die vom Accessor value() zurückgegeben wird, 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 haben werden.
QString QSslCertificateExtension::name() const
Gibt den Namen der Erweiterung zurück. Wenn kein Name für die Erweiterung bekannt ist, wird die OID zurückgegeben.
QString QSslCertificateExtension::oid() const
Gibt die ASN.1 OID dieser Erweiterung zurück.
[noexcept]
void QSslCertificateExtension::swap(QSslCertificateExtension &other)
Tauscht diese Zertifikatserweiterungsinstanz mit other aus. Dieser Vorgang ist sehr schnell und schlägt nie fehl.
QVariant QSslCertificateExtension::value() const
Gibt den Wert der Erweiterung zurück. Die Struktur des zurückgegebenen Wertes hängt von der Art der Erweiterung ab.
QSslCertificateExtension &QSslCertificateExtension::operator=(const QSslCertificateExtension &other)
Weist other dieser Nebenstelle zu und gibt einen Verweis auf diese Nebenstelle zurück.
© 2025 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.