Sur cette page

QOAuth1Signature Class

Met en œuvre les méthodes de signature OAuth 1. Plus d'informations...

En-tête : #include <QOAuth1Signature>
CMake : find_package(Qt6 REQUIRED COMPONENTS NetworkAuth)
target_link_libraries(mytarget PRIVATE Qt6::NetworkAuth)
qmake : QT += networkauth

Types publics

enum class HttpRequestMethod { Head, Get, Put, Post, Delete, …, Unknown }

Fonctions publiques

QOAuth1Signature(const QUrl &url = QUrl(), QOAuth1Signature::HttpRequestMethod method = HttpRequestMethod::Post, const QMultiMap<QString, QVariant> &parameters = {})
QOAuth1Signature(const QUrl &url, const QString &clientSharedKey, const QString &tokenSecret, QOAuth1Signature::HttpRequestMethod method = HttpRequestMethod::Post, const QMultiMap<QString, QVariant> &parameters = {})
QOAuth1Signature(const QOAuth1Signature &other)
QOAuth1Signature(QOAuth1Signature &&other)
~QOAuth1Signature()
void addRequestBody(const QUrlQuery &body)
QString clientSharedKey() const
QByteArray customMethodString() const
QByteArray hmacSha1() const
QOAuth1Signature::HttpRequestMethod httpRequestMethod() const
void insert(const QString &key, const QVariant &value)
QList<QString> keys() const
QMultiMap<QString, QVariant> parameters() const
QByteArray plainText() const
QByteArray rsaSha1() const
void setClientSharedKey(const QString &secret)
void setCustomMethodString(const QByteArray &verb)
void setHttpRequestMethod(QOAuth1Signature::HttpRequestMethod method)
void setParameters(const QMultiMap<QString, QVariant> &parameters)
void setTokenSecret(const QString &secret)
void setUrl(const QUrl &url)
void swap(QOAuth1Signature &other)
QVariant take(const QString &key)
QString tokenSecret() const
QUrl url() const
QVariant value(const QString &key, const QVariant &defaultValue = QVariant()) const
QOAuth1Signature &operator=(QOAuth1Signature &&other)

Membres publics statiques

QByteArray plainText(const QString &clientSharedKey, const QString &tokenSecret)

Description détaillée

Les demandes authentifiées par OAuth peuvent comporter deux ensembles d'informations d'identification : celles transmises via le paramètre "oauth_consumer_key" et celles contenues dans le paramètre "oauth_token". Pour que le serveur puisse vérifier l'authenticité de la demande et empêcher tout accès non autorisé, le client doit prouver qu'il est le propriétaire légitime des informations d'identification. Pour ce faire, il utilise la partie secret partagé (ou clé RSA) de chaque ensemble d'informations d'identification.

OAuth spécifie trois méthodes permettant au client d'établir qu'il est le propriétaire légitime des informations d'identification : "HMAC-SHA1", "RSA-SHA1" et "PLAINTEXT". Chacune génère une "signature" avec laquelle la demande est "signée" ; les deux premières utilisent un condensé des données signées pour générer cette signature, ce qui n'est pas le cas de la dernière. La méthode "RSA-SHA1" n'est pas prise en charge ici ; elle utiliserait une clé RSA plutôt que le secret partagé associé aux informations d'identification du client.

Documentation sur les types de membres

enum class QOAuth1Signature::HttpRequestMethod

Indique la méthode de requête HTTP.

ConstanteValeurDescription de la méthode
QOAuth1Signature::HttpRequestMethod::Head1Méthode HEAD.
QOAuth1Signature::HttpRequestMethod::Get2Méthode GET.
QOAuth1Signature::HttpRequestMethod::Put3Méthode PUT.
QOAuth1Signature::HttpRequestMethod::Post4Méthode POST.
QOAuth1Signature::HttpRequestMethod::Delete5Méthode DELETE.
QOAuth1Signature::HttpRequestMethod::Custom6Identifie une méthode personnalisée.
QOAuth1Signature::HttpRequestMethod::Unknown0Méthode non définie.

Documentation des fonctions membres

[explicit] QOAuth1Signature::QOAuth1Signature(const QUrl &url = QUrl(), QOAuth1Signature::HttpRequestMethod method = HttpRequestMethod::Post, const QMultiMap<QString, QVariant> &parameters = {})

Crée une signature QOAuth1Signature en utilisant

  • url comme adresse cible
  • method comme méthode HTTP utilisée pour envoyer la requête
  • et l'utilisateur donné parameters pour compléter la demande.

QOAuth1Signature::QOAuth1Signature(const QUrl &url, const QString &clientSharedKey, const QString &tokenSecret, QOAuth1Signature::HttpRequestMethod method = HttpRequestMethod::Post, const QMultiMap<QString, QVariant> &parameters = {})

Crée une signature QOAuth1Signature en utilisant

  • url comme adresse cible
  • clientSharedKey le jeton d'utilisateur utilisé pour vérifier la signature
  • tokenSecret le jeton négocié utilisé pour vérifier la signature
  • method la méthode HTTP utilisée pour envoyer la demande
  • et l'utilisateur donné parameters pour augmenter la demande.

QOAuth1Signature::QOAuth1Signature(const QOAuth1Signature &other)

Crée une copie de other.

QOAuth1Signature::QOAuth1Signature(QOAuth1Signature &&other)

Move-construit une instance QOAuth1Signature, reprenant les données privées utilisées par other.

[noexcept] QOAuth1Signature::~QOAuth1Signature()

Détruit le site QOAuth1Signature.

void QOAuth1Signature::addRequestBody(const QUrlQuery &body)

Ajoute la requête body à la signature. Lorsque le corps d'une requête POST contient des arguments, ceux-ci doivent être inclus dans les données signées.

QString QOAuth1Signature::clientSharedKey() const

Renvoie le secret utilisateur utilisé pour générer la signature.

Voir aussi setClientSharedKey().

QByteArray QOAuth1Signature::customMethodString() const

Renvoie la chaîne de la méthode personnalisée.

Voir aussi setCustomMethodString() et httpRequestMethod().

QByteArray QOAuth1Signature::hmacSha1() const

Génère la signature HMAC-SHA1 en utilisant le secret partagé du client et, le cas échéant, le secret du jeton.

QOAuth1Signature::HttpRequestMethod QOAuth1Signature::httpRequestMethod() const

Renvoie la méthode de requête.

Voir aussi setHttpRequestMethod().

void QOAuth1Signature::insert(const QString &key, const QVariant &value)

Insère une nouvelle paire key, value dans la signature. Lorsque le corps d'une requête POST contient des arguments, ceux-ci doivent être inclus dans les données signées.

QList<QString> QOAuth1Signature::keys() const

Récupère la liste des clés des paramètres inclus dans les données signées.

QMultiMap<QString, QVariant> QOAuth1Signature::parameters() const

Renvoie les paramètres.

Voir aussi setParameters().

QByteArray QOAuth1Signature::plainText() const

Génère la signature PLAINTEXT.

[static] QByteArray QOAuth1Signature::plainText(const QString &clientSharedKey, const QString &tokenSecret)

Génère une signature PLAINTEXT à partir du secret du client clientSharedKey et du secret du jeton tokenSecret.

QByteArray QOAuth1Signature::rsaSha1() const

Génère la signature RSA-SHA1.

Note : Actuellement, cette méthode n'est pas prise en charge.

void QOAuth1Signature::setClientSharedKey(const QString &secret)

Définit secret comme secret d'utilisateur utilisé pour générer la signature.

Voir aussi clientSharedKey().

void QOAuth1Signature::setCustomMethodString(const QByteArray &verb)

Définit une méthode de requête personnalisée. L'adresse httpRequestMethod est remplacée par l'adresse QOAuth1Signature::HttpRequestMethod::Custom et l'adresse verb est stockée afin d'être utilisée pour la génération de la signature.

Remarque : l'utilisation de cette méthode est nécessaire lorsque l'on travaille avec des verbes personnalisés. Définir uniquement la méthode de requête échouera, car la signature doit connaître le verbe réel.

Voir également customMethodString(), setHttpRequestMethod() et HttpRequestMethod.

void QOAuth1Signature::setHttpRequestMethod(QOAuth1Signature::HttpRequestMethod method)

Définit la requête method.

Voir aussi httpRequestMethod().

void QOAuth1Signature::setParameters(const QMultiMap<QString, QVariant> &parameters)

Définit la valeur de parameters.

Voir aussi parameters().

void QOAuth1Signature::setTokenSecret(const QString &secret)

Définit secret comme le secret négocié utilisé pour générer la signature.

Voir aussi tokenSecret().

void QOAuth1Signature::setUrl(const QUrl &url)

Définit l'URL à url.

Voir aussi url().

void QOAuth1Signature::swap(QOAuth1Signature &other)

Remplace la signature other par cette signature. Cette opération est très rapide et n'échoue jamais.

QVariant QOAuth1Signature::take(const QString &key)

Supprime key et toute valeur associée des données signées.

QString QOAuth1Signature::tokenSecret() const

Renvoie le secret négocié utilisé pour générer la signature.

Voir aussi setTokenSecret().

QUrl QOAuth1Signature::url() const

Renvoie l'URL.

Voir aussi setUrl().

QVariant QOAuth1Signature::value(const QString &key, const QVariant &defaultValue = QVariant()) const

Renvoie la valeur associée à key, si elle est présente dans les données signées, sinon defaultValue.

QOAuth1Signature &QOAuth1Signature::operator=(QOAuth1Signature &&other)

Move attribue other à cette signature et renvoie une référence à cette QOAuth1Signature.

© 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.