このページでは

QOAuth1 Class

QOAuth1 クラスは、OAuth 1 プロトコルの実装を提供します。詳細...

ヘッダー: #include <QOAuth1>
CMake: find_package(Qt6 REQUIRED COMPONENTS NetworkAuth)
target_link_libraries(mytarget PRIVATE Qt6::NetworkAuth)
qmake: QT += networkauth
継承元: QAbstractOAuth

パブリック型

enum class SignatureMethod { Hmac_Sha1, Rsa_Sha1, PlainText }

パブリック関数

QOAuth1(QObject *parent = nullptr)
QOAuth1(QNetworkAccessManager *manager, QObject *parent = nullptr)
QOAuth1(const QString &clientIdentifier, const QString &clientSharedSecret, QNetworkAccessManager *manager, QObject *parent = nullptr)
std::pair<QString, QString> clientCredentials() const
QString clientSharedSecret() const
void setClientCredentials(const std::pair<QString, QString> &clientCredentials)
void setClientCredentials(const QString &clientIdentifier, const QString &clientSharedSecret)
void setClientSharedSecret(const QString &clientSharedSecret)
void setSignatureMethod(QOAuth1::SignatureMethod value)
void setTemporaryCredentialsUrl(const QUrl &url)
void setTokenCredentials(const std::pair<QString, QString> &tokenCredentials)
void setTokenCredentials(const QString &token, const QString &tokenSecret)
void setTokenCredentialsUrl(const QUrl &url)
void setTokenSecret(const QString &tokenSecret)
QOAuth1::SignatureMethod signatureMethod() const
QUrl temporaryCredentialsUrl() const
std::pair<QString, QString> tokenCredentials() const
QUrl tokenCredentialsUrl() const
QString tokenSecret() const

再実装されたパブリック関数

virtual QNetworkReply *deleteResource(const QUrl &url, const QVariantMap &parameters = QVariantMap()) override
virtual QNetworkReply *get(const QUrl &url, const QVariantMap &parameters = QVariantMap()) override
virtual QNetworkReply *head(const QUrl &url, const QVariantMap &parameters = QVariantMap()) override
virtual QNetworkReply *post(const QUrl &url, const QVariantMap &parameters = QVariantMap()) override
virtual void prepareRequest(QNetworkRequest *request, const QByteArray &verb, const QByteArray &body = QByteArray()) override
virtual QNetworkReply *put(const QUrl &url, const QVariantMap &parameters = QVariantMap()) override

パブリック・スロット

void continueGrantWithVerifier(const QString &verifier)
virtual void grant() override

シグナル

void clientSharedSecretChanged(const QString &credential)
void signatureMethodChanged(QOAuth1::SignatureMethod method)
void temporaryCredentialsUrlChanged(const QUrl &url)
void tokenCredentialsUrlChanged(const QUrl &url)
void tokenSecretChanged(const QString &token)

protected 関数

QNetworkReply *requestTemporaryCredentials(QNetworkAccessManager::Operation operation, const QUrl &url, const QVariantMap &parameters = QVariantMap())
QNetworkReply *requestTokenCredentials(QNetworkAccessManager::Operation operation, const QUrl &url, const std::pair<QString, QString> &temporaryToken, const QVariantMap &parameters = QVariantMap())
void setup(QNetworkRequest *request, const QVariantMap &signingParameters, QNetworkAccessManager::Operation operation)
void setup(QNetworkRequest *request, const QVariantMap &signingParameters, const QByteArray &operationVerb)

静的プロテクトされたメンバ

QByteArray generateAuthorizationHeader(const QVariantMap &oauthParams)
QByteArray nonce()

詳細な説明

QOAuth1 は、クライアントがリソース所有者(別のクライアントやエンドユーザーなど)に代わってサーバーリソースにアクセスするためのメソッドを提供します。また、ユーザーエージェントのリダイレクトを使用して、エンドユーザーが認証情報(通常はユーザー名とパスワードの組み合わせ)を共有することなく、サードパーティによる自身のサーバーリソースへのアクセスを承認するためのプロセスも提供します。

QOAuth1 では、リソース所有者によってクライアントに付与された認可を、トークンで表します。通常、トークン認証情報は、リソース所有者の身元認証(通常はユーザー名とパスワードを使用)を行った後、リソース所有者の要求に応じてサーバーによって発行されます。

一時的な認証情報の要求を行う際、クライアントはクライアント認証情報のみを使用して認証を行います。 トークン要求を行う際、クライアントはクライアント認証情報と一時的な認証情報の両方を使用して認証を行います。クライアントがトークン認証情報を受け取り、保存すると、クライアント認証情報と受け取ったトークン認証情報を組み合わせて認証済みリクエストを行うことにより、リソース所有者に代わって保護されたリソースへのアクセスを進めることができます。

メンバータイプのドキュメント

enum class QOAuth1::SignatureMethod

リクエストの署名に使用する署名方法を指定します。

定数値説明
QOAuth1::SignatureMethod::Hmac_Sha10HMAC-SHA1署名方式。
QOAuth1::SignatureMethod::Rsa_Sha11RSA-SHA1署名方式(サポートされていません)。
QOAuth1::SignatureMethod::PlainText2PLAINTEXT署名方式。

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

[explicit] QOAuth1::QOAuth1(QObject *parent = nullptr)

親オブジェクトparent を持つQOAuth1オブジェクトを生成します。

[explicit] QOAuth1::QOAuth1(QNetworkAccessManager *manager, QObject *parent = nullptr)

親オブジェクトparent を持つ QOAuth1 オブジェクトを生成し、manager を使用してネットワークにアクセスします。

QOAuth1::QOAuth1(const QString &clientIdentifier, const QString &clientSharedSecret, QNetworkAccessManager *manager, QObject *parent = nullptr)

親オブジェクトparent を持つ QOAuth1 オブジェクトを構築し、manager を使用してネットワークにアクセスします。また、Web サーバーへの呼び出しに署名し、アプリケーションを識別するために、clientIdentifier およびclientSharedSecret を設定します。

std::pair<QString, QString> QOAuth1::clientCredentials() const

アプリケーションを識別し、Webサーバーへのリクエストに署名するために使用されるQString のペアを返します。

setClientCredentials()も参照してください 。

QString QOAuth1::clientSharedSecret() const

Web サーバーへのリクエストの署名に使用される、現在の共有シークレットを返します。

setClientSharedSecret() およびclientCredentials()も参照してください 。

[signal] void QOAuth1::clientSharedSecretChanged(const QString &credential)

クライアントの共有秘密鍵credential が変更された際に発行されます。

clientSharedSecret()、setClientSharedSecret()、およびsetClientCredentials()も参照してください 。

[slot] void QOAuth1::continueGrantWithVerifier(const QString &verifier)

verifier を使用して、リダイレクトベースの認証フローを継続します。帯域外応答ハンドラーを使用する場合、Web サーバーから提供された検証者を指定するために、この関数を呼び出します。

[override virtual] QNetworkReply *QOAuth1::deleteResource(const QUrl &url, const QVariantMap &parameters = QVariantMap())

QAbstractOAuth::deleteResource(const QUrl &url, const QVariantMap &parameters) を再実装します。

認証済みの DELETE リクエストを送信し、新しい `QNetworkReply` を返します。リクエストの作成には、url およびparameters が使用されます。

関連項目:ハイパーテキスト転送プロトコル – HTTP/1.1: DELETE

[static protected] QByteArray QOAuth1::generateAuthorizationHeader(const QVariantMap &oauthParams)

oauthParams を使用して、認証ヘッダーを生成します。

関連項目:OAuth 1.0 プロトコル: 認証ヘッダー

[override virtual] QNetworkReply *QOAuth1::get(const QUrl &url, const QVariantMap &parameters = QVariantMap())

QAbstractOAuth::get(const QUrl &url, const QVariantMap &parameters) を再実装します。

認証済みのGETリクエストを送信し、新しいQNetworkReply を返します。url およびparameters は、リクエストの作成に使用されます。

関連項目:ハイパーテキスト転送プロトコル – HTTP/1.1: GET

[override virtual slot] void QOAuth1::grant()

QAbstractOAuth::grant() を再実装します。

リダイレクトベースの認証フローを開始します。

注: アウトオブバンドの応答ハンドラの場合 、この関数の呼び出し後に検証用文字列が受信されます。その文字列をcontinueGrantWithVerifier() に渡して、グラント処理を続行してください。

関連項目:OAuth 1.0 プロトコル: リダイレクトベースの認証

関連項目: continueGrantWithVerifier()。

QAbstractOAuth::head(const QUrl &url, const QVariantMap &parameters) を再実装します。

認証済みの HEAD リクエストを送信し、新しい `QNetworkReply` を返します。リクエストの作成には、`url ` および `parameters ` が使用されます。

関連項目:ハイパーテキスト転送プロトコル – HTTP/1.1: HEAD

[static protected] QByteArray QOAuth1::nonce()

ノンスを生成します。

関連項目:OAuth 1.0 プロトコル: ノンスとタイムスタンプ

[override virtual] QNetworkReply *QOAuth1::post(const QUrl &url, const QVariantMap &parameters = QVariantMap())

QAbstractOAuth::post(const QUrl &url, const QVariantMap &parameters) を再実装します。

認証済みのPOSTリクエストを送信し、新しいQNetworkReply を返します。url およびparameters は、リクエストの作成に使用されます。

関連項目:ハイパーテキスト転送プロトコル – HTTP/1.1: POST

[override virtual] void QOAuth1::prepareRequest(QNetworkRequest *request, const QByteArray &verb, const QByteArray &body = QByteArray())

QAbstractOAuth::prepareRequest (QNetworkRequest *request, const QByteArray &verb, const QByteArray &body)を再実装します。

[override virtual] QNetworkReply *QOAuth1::put(const QUrl &url, const QVariantMap &parameters = QVariantMap())

QAbstractOAuth::put(const QUrl &url, const QVariantMap &parameters) を再実装します。

認証済みのPUTリクエストを送信し、新しいQNetworkReply を返します。url およびparameters は、リクエストの作成に使用されます。

関連項目:ハイパーテキスト転送プロトコル – HTTP/1.1: PUT

[protected] QNetworkReply *QOAuth1::requestTemporaryCredentials(QNetworkAccessManager::Operation operation, const QUrl &url, const QVariantMap &parameters = QVariantMap())

operation リクエストメソッドを使用して、一時的な認証情報のリクエストを開始します。リクエスト URL はurl であり、parameters はエンコードされてリクエスト中に送信される必要があります。

関連項目:OAuth 1.0 プロトコル: 一時認証情報

[protected] QNetworkReply *QOAuth1::requestTokenCredentials(QNetworkAccessManager::Operation operation, const QUrl &url, const std::pair<QString, QString> &temporaryToken, const QVariantMap &parameters = QVariantMap())

operation リクエストメソッドを使用して、トークン認証情報のリクエストを開始します。リクエスト URL はurl であり、parameters はエンコードされてリクエスト中に送信される必要があります。temporaryToken という文字列のペアは、リクエストの識別および署名に使用されます。

関連項目:OAuth 1.0 プロトコル: トークン認証情報

void QOAuth1::setClientCredentials(const std::pair<QString, QString> &clientCredentials)

clientCredentials を、アプリケーションを識別し、Web サーバーへのリクエストに署名するために使用されるQString のペアとして設定します。

clientCredentials()も参照してください 。

void QOAuth1::setClientCredentials(const QString &clientIdentifier, const QString &clientSharedSecret)

clientIdentifier およびclientSharedSecret を、アプリケーションを識別し、Web サーバーへのリクエストに署名するために使用されるQString のペアとして設定します。clientIdentifier はアプリケーションを識別し、clientSharedSecret はリクエストへの署名に使用されます。

clientCredentials()も参照してください 。

void QOAuth1::setClientSharedSecret(const QString &clientSharedSecret)

clientSharedSecret を、Web サーバーへのリクエストの署名に使用する文字列として設定します。

clientSharedSecret() およびsetClientCredentials()も参照してください 。

void QOAuth1::setSignatureMethod(QOAuth1::SignatureMethod value)

Webサーバーへのリクエストの署名に使用するメソッドとして、value を設定します。

signatureMethod()も参照してください 。

void QOAuth1::setTemporaryCredentialsUrl(const QUrl &url)

url を、認証プロセスを開始するための一時的な認証情報をリクエストする URL として設定します。

temporaryCredentialsUrl()も参照してください 。

void QOAuth1::setTokenCredentials(const std::pair<QString, QString> &tokenCredentials)

tokenCredentials を、Web サーバーへの認証済みリクエストを識別および署名するために使用されるQString のペアとして設定します。

tokenCredentials()も参照してください 。

void QOAuth1::setTokenCredentials(const QString &token, const QString &tokenSecret)

token およびtokenSecret を、Web サーバーへの認証済みリクエストを識別および署名するために使用されるQString のペアとして設定します。クライアントがトークン認証情報を取得して保存すると、クライアント認証情報と受け取ったトークン認証情報を組み合わせて認証済みリクエストを行うことにより、リソース所有者に代わって保護されたリソースへのアクセスを進めることができます。

tokenCredentials()も参照してください 。

void QOAuth1::setTokenCredentialsUrl(const QUrl &url)

url を、認証プロセスを続行するためにトークン認証情報をリクエストする URL として設定します。

tokenCredentialsUrl()も参照してください 。

void QOAuth1::setTokenSecret(const QString &tokenSecret)

tokenSecret を、Web サーバーへの認証済み呼び出しの署名に使用される現在のトークンシークレットとして設定します。

tokenSecret() およびsetTokenCredentials()も参照してください 。

[protected] void QOAuth1::setup(QNetworkRequest *request, const QVariantMap &signingParameters, QNetworkAccessManager::Operation operation)

signingParameters およびoperation を使用して、request に署名します。

これはオーバーロードされた関数です。

[protected] void QOAuth1::setup(QNetworkRequest *request, const QVariantMap &signingParameters, const QByteArray &operationVerb)

signingParameters およびoperationVerb を使用して、request を署名します。

これはオーバーロードされた関数です。

QOAuth1::SignatureMethod QOAuth1::signatureMethod() const

Webサーバーへのリクエストの署名に使用されたメソッドを返します。

setSignatureMethod()も参照してください 。

[signal] void QOAuth1::signatureMethodChanged(QOAuth1::SignatureMethod method)

署名「method 」が変更された際に発生します。

signatureMethod() およびsetSignatureMethod()も参照してください 。

QUrl QOAuth1::temporaryCredentialsUrl() const

認証プロセスを開始するために一時的な認証情報をリクエストする際に使用されるURLを返します。

setTemporaryCredentialsUrl()も参照してください 。

[signal] void QOAuth1::temporaryCredentialsUrlChanged(const QUrl &url)

一時的な認証情報url が変更された際に発行されます。

temporaryCredentialsUrl() およびsetTemporaryCredentialsUrl()も参照してください 。

std::pair<QString, QString> QOAuth1::tokenCredentials() const

Webサーバーへの認証済みリクエストを識別および署名するために使用されるQString のペアを返します。

setTokenCredentials()も参照してください 。

QUrl QOAuth1::tokenCredentialsUrl() const

認証プロセスを続行するために、トークン認証情報をリクエストする際に使用されるURLを返します。

setTokenCredentialsUrl()も参照してください 。

[signal] void QOAuth1::tokenCredentialsUrlChanged(const QUrl &url)

トークンの認証情報url が変更された際に発行されます。

tokenCredentialsUrl() およびsetTokenCredentialsUrl()も参照してください 。

QString QOAuth1::tokenSecret() const

Web サーバーへの認証済みリクエストの署名に使用される、現在のトークンシークレットを返します。

setTokenSecret() およびtokenCredentials()も参照してください 。

[signal] void QOAuth1::tokenSecretChanged(const QString &token)

トークンシークレットtoken が変更された際に発行されます。

tokenSecret()、setTokenSecret()、およびsetTokenCredentials()も参照してください 。

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