QOAuth1Signature Class

OAuth 1 の署名メソッドを実装します。さらに...

ヘッダ #include <QOAuth1Signature>
CMake: find_package(Qt6 REQUIRED COMPONENTS NetworkAuth)
target_link_libraries(mytarget PRIVATE Qt6::NetworkAuth)
qmake: QT += networkauth

パブリックな型

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

パブリック関数

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)

静的パブリックメンバ

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

詳しい説明

OAuthで認証されたリクエストには、"oauth_consumer_key" パラメータで渡されるものと、"oauth_token" パラメータで渡されるものの2つの認証情報があります。サーバーがリクエストの信憑性を検証し、不正アクセスを防ぐために、クライアン トはそれが信用証明書の正当な所有者であることを証明する必要がある。これは、クレデンシャルの各セットの共有秘密(または RSA キー)部分を使用して達成される。

OAuth は、クライアントがクレデンシャルの正当な所有者であることを証明するための 3 つの方法を規定している:「HMAC-SHA1」、「RSA-SHA1」、「PLAINTEXT」である。それぞれ、リクエストが「署名」される「署名」を生成する。最初の2つは、署名されたデータのダイジェストを生成に使用するが、最後のものは使用しない。RSA-SHA1」メソッドはここではサポートされていない。これは、クライアントの信用情報に関連付けられた共有秘密鍵ではなく、RSA鍵を使用するからである。

メンバー型ドキュメント

enum class QOAuth1Signature::HttpRequestMethod

HTTP リクエストメソッドを示します。

定数説明
QOAuth1Signature::HttpRequestMethod::Head1HEAD メソッド。
QOAuth1Signature::HttpRequestMethod::Get2GET メソッド。
QOAuth1Signature::HttpRequestMethod::Put3PUTメソッド
QOAuth1Signature::HttpRequestMethod::Post4POSTメソッド
QOAuth1Signature::HttpRequestMethod::Delete5DELETEメソッド
QOAuth1Signature::HttpRequestMethod::Custom6カスタム・メソッドを指定します。
QOAuth1Signature::HttpRequestMethod::Unknown0メソッドは設定されていません。

メンバ関数のドキュメント

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

を使用してQOAuth1Signatureを作成する。

  • url をターゲットアドレス
  • method をリクエストの送信に使われる HTTP メソッド
  • を使用し、指定されたユーザparameters でリクエストを補強します。

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

を使用してQOAuth1Signatureを作成する。

  • url をターゲットアドレス
  • clientSharedKey 署名の検証に使われるユーザトークンとして
  • tokenSecret 署名の検証に使われるネゴシエートされたトークンとして
  • method リクエストを送るために使われる HTTP メソッド
  • として、そしてリクエストを拡張するために指定されたユーザparameters として、QOAuth1Signature を作成します。

QOAuth1Signature::QOAuth1Signature(const QOAuth1Signature &other)

other のコピーを作成する。

QOAuth1Signature::QOAuth1Signature(QOAuth1Signature &&other)

Move-QOAuth1Signatureインスタンスを構築し、other が使用していたプライベートデータを引き継ぐ。

[noexcept] QOAuth1Signature::~QOAuth1Signature()

QOAuth1Signature を破壊する。

void QOAuth1Signature::addRequestBody(const QUrlQuery &body)

署名にリクエストbody を追加する。POSTリクエストボディに引数が含まれる場合、それらは署名されたデータに 含まれるべきである。

QString QOAuth1Signature::clientSharedKey() const

署名の生成に使用したユーザー秘密を返します。

setClientSharedKey()も参照

QByteArray QOAuth1Signature::customMethodString() const

カスタム・メソッドの文字列を返します。

setCustomMethodString() およびhttpRequestMethod()も参照 ください。

QByteArray QOAuth1Signature::hmacSha1() const

HMAC-SHA1署名を、クライアントの共有秘密と、利用可能な場合はトークンシークレットを使用して生成する。

QOAuth1Signature::HttpRequestMethod QOAuth1Signature::httpRequestMethod() const

リクエストメソッドを返します。

setHttpRequestMethod()も参照ください

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

署名に新しいペアkey,value を挿入する。POSTリクエストボディが引数を含む場合、それらは署名されたデータに 含まれるべきである。

QList<QString> QOAuth1Signature::keys() const

署名されたデータに含まれるパラメータのキーのリストを取得する。

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

パラメータを返す。

setParameters()も参照

QByteArray QOAuth1Signature::plainText() const

PLAINTEXT署名を生成する。

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

クライアント秘密鍵clientSharedKey とトークン秘密鍵tokenSecret からPLAINTEXT署名を生成する。

QByteArray QOAuth1Signature::rsaSha1() const

RSA-SHA1署名を生成する。

注: 現在、この方法はサポートされていない。

void QOAuth1Signature::setClientSharedKey(const QString &secret)

署名の生成に使われるユーザー秘密としてsecret を設定する。

clientSharedKey()も参照

void QOAuth1Signature::setCustomMethodString(const QByteArray &verb)

カスタムリクエストメソッドを設定する。httpRequestMethodQOAuth1Signature::HttpRequestMethod::Custom に設定し、verb を保存してシグネチャの生成に使用します。

注意: カスタム動詞を使用する場合は、このメソッドを使用する必要があります。シグネチャは実際の動詞を知る必要があるためです。

customMethodString()、setHttpRequestMethod()、HttpRequestMethodも参照のこと

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

リクエストmethod を設定する。

httpRequestMethod()も参照のこと

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

parameters を設定する。

parameters()も参照

void QOAuth1Signature::setTokenSecret(const QString &secret)

署名の生成に使われるネゴシエートされた秘密をsecret に設定する。

tokenSecret()も参照

void QOAuth1Signature::setUrl(const QUrl &url)

URL をurl に設定する。

url()も参照のこと

void QOAuth1Signature::swap(QOAuth1Signature &other)

other のシグネチャをこのシグネチャと交換する。この操作は非常に速く、失敗することはない。

QVariant QOAuth1Signature::take(const QString &key)

符号付きデータからkey と関連する値を削除する。

QString QOAuth1Signature::tokenSecret() const

署名の生成に使われたネゴシエート済みの秘密を返します。

setTokenSecret()も参照

QUrl QOAuth1Signature::url() const

URL を返す。

setUrl()も参照

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

符号付きデータに存在する場合はkey に関連する値を返し、そうでない場合はdefaultValue を返す。

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

Move-この署名にother を割り当て、このQOAuth1Signature への参照を返す。

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