QSslCertificateExtension Class
La classe QSslCertificateExtension fournit une API permettant d'accéder aux extensions d'un certificat X509. Plus d'informations...
| En-tête : | #include <QSslCertificateExtension> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Network)target_link_libraries(mytarget PRIVATE Qt6::Network) |
| qmake : | QT += network |
- Liste de tous les membres, y compris les membres hérités
- QSslCertificateExtension fait partie de Network Programming API et de Implicitly Shared Classes.
Note : Toutes les fonctions de cette classe sont réentrantes.
Fonctions publiques
| 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) |
Description détaillée
QSslCertificateExtension permet d'accéder à une extension stockée dans un certificat X509. Les informations disponibles dépendent du type d'extension auquel on accède.
Toutes les extensions de certificats X509 possèdent les propriétés suivantes :
| Propriété | Description de la propriété |
|---|---|
| nom | Nom lisible de l'extension, par exemple "basicConstraints". |
| criticité | Valeur booléenne indiquant si l'extension est essentielle à l'interprétation correcte du certificat. |
| oid | L'identificateur d'objet ASN.1 qui précise de quelle extension il s'agit. |
| supporté | Si cette valeur est vraie, la structure de la valeur de l'extension ne changera pas entre les versions de Qt. |
| valeur | QVariant dont la structure dépend du type d'extension. |
Bien que cette classe permette d'accéder à n'importe quel type d'extension, seuls certains sont garantis d'être renvoyés dans un format qui restera inchangé d'une version à l'autre. La méthode isSupported() renvoie true pour les extensions pour lesquelles c'est le cas.
Les extensions actuellement prises en charge et la structure de la valeur renvoyée sont les suivantes :
| Nom | OID | Détails |
|---|---|---|
| basicConstraints | 2.5.29.19 | Renvoyé sous forme de QVariantMap. La clé "ca" contient une valeur booléenne, la clé facultative "pathLenConstraint" contient un nombre entier. |
| authorityInfoAccess | 1.3.6.1.5.5.7.1.1 | Renvoyé sous forme de QVariantMap. Il existe une clé pour chaque méthode d'accès, la valeur étant un URI. |
| subjectKeyIdentifier | 2.5.29.14 | Renvoyé sous la forme d'un QVariant contenant un QString. La chaîne est l'identifiant de la clé. |
| authorityKeyIdentifier | 2.5.29.35 | Renvoyé sous la forme d'un QVariantMap. La clé facultative "keyid" contient l'identifiant de la clé sous la forme d'une chaîne hexagonale stockée dans un QByteArray. La clé facultative "serial" contient le numéro de série de la clé d'autorité sous la forme d'un qlonglong. Actuellement, il n'y a pas de prise en charge du champ "general names" de cette extension. |
Outre les extensions prises en charge ci-dessus, de nombreuses autres extensions courantes seront renvoyées d'une manière raisonnablement structurée. Les extensions qui ne sont pas prises en charge par le backend SSL seront renvoyées sous la forme d'une adresse QByteArray.
De plus amples informations sur les types d'extensions que les certificats peuvent contenir sont disponibles dans la RFC 5280.
Voir également QSslCertificate::extensions().
Documentation des fonctions membres
QSslCertificateExtension::QSslCertificateExtension()
Construit une QSslCertificateExtension.
QSslCertificateExtension::QSslCertificateExtension(const QSslCertificateExtension &other)
Construit une copie de other.
[noexcept] QSslCertificateExtension::~QSslCertificateExtension()
Détruit l'extension.
bool QSslCertificateExtension::isCritical() const
Renvoie la criticité de l'extension.
bool QSslCertificateExtension::isSupported() const
Renvoie la valeur true si cette extension est prise en charge. Dans ce cas, supporté signifie simplement que la structure de QVariant renvoyée par l'accesseur value() restera inchangée d'une version à l'autre. Les extensions non prises en charge peuvent être utilisées librement, mais il n'y a aucune garantie que les données renvoyées auront la même structure d'une version à l'autre.
QString QSslCertificateExtension::name() const
Renvoie le nom de l'extension. Si aucun nom n'est connu pour l'extension, l'OID sera renvoyé.
QString QSslCertificateExtension::oid() const
Renvoie l'OID ASN.1 de cette extension.
[noexcept] void QSslCertificateExtension::swap(QSslCertificateExtension &other)
Remplace cette instance d'extension de certificat par other. Cette opération est très rapide et n'échoue jamais.
QVariant QSslCertificateExtension::value() const
Renvoie la valeur de l'extension. La structure de la valeur renvoyée dépend du type d'extension.
QSslCertificateExtension &QSslCertificateExtension::operator=(const QSslCertificateExtension &other)
Attribue other à cette extension et renvoie une référence à cette extension.
© 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.