QAbstractOAuth2 Class

QAbstractOAuth2 クラスは、OAuth 2 認証メソッドのすべての実装のベースとなるものです。詳細...

ヘッダ #include <QAbstractOAuth2>
CMake: find_package(Qt6 REQUIRED COMPONENTS NetworkAuth)
target_link_libraries(mytarget PRIVATE Qt6::NetworkAuth)
qmake: QT += networkauth
を継承する: QAbstractOAuth
によって継承される:

QOAuth2AuthorizationCodeFlow そしてQOAuth2DeviceAuthorizationFlow

パブリックな型

(since 6.9) enum class NonceMode { Automatic, Enabled, Disabled }

プロパティ

パブリック関数

QAbstractOAuth2(QObject *parent = nullptr)
QAbstractOAuth2(QNetworkAccessManager *manager, QObject *parent = nullptr)
virtual ~QAbstractOAuth2()
bool autoRefresh() const
void clearNetworkRequestModifier()
QString clientIdentifierSharedKey() const
virtual QUrl createAuthenticatedUrl(const QUrl &url, const QVariantMap &parameters = QVariantMap())
QDateTime expirationAt() const
QSet<QByteArray> grantedScopeTokens() const
QString idToken() const
QString nonce() const
QAbstractOAuth2::NonceMode nonceMode() const
(until 6.11) virtual QNetworkReply *post(const QUrl &url, QHttpMultiPart *multiPart)
(until 6.11) virtual QNetworkReply *post(const QUrl &url, const QByteArray &data)
(until 6.11) virtual QNetworkReply *put(const QUrl &url, QHttpMultiPart *multiPart)
(until 6.11) virtual QNetworkReply *put(const QUrl &url, const QByteArray &data)
std::chrono::seconds refreshLeadTime() const
QString refreshToken() const
QSet<QByteArray> requestedScopeTokens() const
QString responseType() const
QString scope() const
void setAutoRefresh(bool enable)
void setClientIdentifierSharedKey(const QString &clientIdentifierSharedKey)
(since 6.9) void setNetworkRequestModifier(const QAbstractOAuth2::ContextTypeForFunctor<Functor> *context, Functor &&callback)
void setNonce(const QString &nonce)
void setNonceMode(QAbstractOAuth2::NonceMode mode)
void setRefreshLeadTime(std::chrono::seconds leadTime)
void setRefreshToken(const QString &refreshToken)
void setRequestedScopeTokens(const QSet<QByteArray> &tokens)
void setScope(const QString &scope)
(since 6.5) void setSslConfiguration(const QSslConfiguration &configuration)
void setState(const QString &state)
void setTokenUrl(const QUrl &tokenUrl)
void setUserAgent(const QString &userAgent)
(since 6.5) QSslConfiguration sslConfiguration() const
QString state() const
QUrl tokenUrl() const
QString userAgent() const

再実装パブリック関数

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

パブリック・スロット

(since 6.9) void refreshTokens()

シグナル

(since 6.9) void accessTokenAboutToExpire()
void authorizationCallbackReceived(const QVariantMap &data)
void autoRefreshChanged(bool enable)
void clientIdentifierSharedKeyChanged(const QString &clientIdentifierSharedKey)
(until 6.13) void error(const QString &error, const QString &errorDescription, const QUrl &uri)
void expirationAtChanged(const QDateTime &expiration)
void grantedScopeTokensChanged(const QSet<QByteArray> &tokens)
void idTokenChanged(const QString &idToken)
void nonceChanged(const QString &nonce)
void nonceModeChanged(QAbstractOAuth2::NonceMode mode)
void refreshLeadTimeChanged(std::chrono::seconds leadTime)
void refreshTokenChanged(const QString &refreshToken)
void requestedScopeTokensChanged(const QSet<QByteArray> &tokens)
void scopeChanged(const QString &scope)
(since 6.9) void serverReportedErrorOccurred(const QString &error, const QString &errorDescription, const QUrl &uri)
(since 6.5) void sslConfigurationChanged(const QSslConfiguration &configuration)
void stateChanged(const QString &state)
void tokenUrlChanged(const QUrl &tokenUrl)
void userAgentChanged(const QString &userAgent)

保護されたスロット

(since 6.9) void refreshTokensImplementation()

詳細説明

このクラスは OAuth 2 認証クラスの基本インターフェイスを定義します。このクラスを継承することで、さまざまなウェブサービス用の OAuth 2 標準を使用したカスタム認証メソッドを作成することができます。

OAuth 2 の仕組みについてはOAuth 2.0 認証フレームワーク

メンバ型のドキュメント

[since 6.9] enum class QAbstractOAuth2::NonceMode

利用可能なnonceモードのリスト。

定数説明
QAbstractOAuth2::NonceMode::Automatic0requested scopeopenid が含まれる場合、Nonce が送信される。これはデフォルトのモードであり、nonce が OIDC 認証フローに関連する場合にのみ送信される。
QAbstractOAuth2::NonceMode::Enabled1認証段階でNonceが送信される。
QAbstractOAuth2::NonceMode::Disabled2Nonceは認証段階では送信されない。

この列挙は Qt 6.9 で導入されました。

nonce およびQt OAuth2 Overviewも参照してください

プロパティの説明

[since 6.9] autoRefresh : bool

このプロパティは、アクセストークンの自動更新を有効または無効にします。

このプロパティは、アクセストークンの自動更新を有効または無効にします。これは、ユーザの介入なしに継続的な認証が必要なアプリケーションに便利です。

このプロパティがtrue の場合、トークンが期限切れになり、有効なrefreshToken が存在するときにrefreshTokens() が自動的に呼び出されます。

このプロパティは Qt 6.9 で導入されました。

アクセス関数

bool autoRefresh() const
void setAutoRefresh(bool enable)

Notifier シグナル:

void autoRefreshChanged(bool enable)

refreshLeadTime およびaccessTokenAboutToExpire()も参照してください

clientIdentifierSharedKey : QString

このプロパティは、サーバがトークンを要求する際に認証を必要とする場合に、パスワードとして使用されるクライアント共有鍵を保持する。

アクセス関数

QString clientIdentifierSharedKey() const
void setClientIdentifierSharedKey(const QString &clientIdentifierSharedKey)

通知シグナル

void clientIdentifierSharedKeyChanged(const QString &clientIdentifierSharedKey)

[read-only] expiration : const QDateTime

このプロパティは、現在のアクセストークンの有効期限を保持します。無効な値は、認証サーバが有効な有効期限を提供していないことを意味します。

アクセス関数:

QDateTime expirationAt() const

Notifier シグナル:

void expirationAtChanged(const QDateTime &expiration)

QDateTime::isValid()も参照

[read-only, since 6.9] grantedScopeTokens : const QSet<QByteArray>

このプロパティは、認可サーバから付与されたスコープを保持する。

要求されたスコープと付与されたスコープは異なる可能性があります。エンドユーザがスコープのサブセットのみを許可することを選択したり、サーバ側のポリシーによってスコープが変更されたりする可能性があります。アプリケーションは、このようなシナリオに対応できるように準備しておく必要があります。そして、付与されたスコープをチェックして、アプリケーションロジックに影響を与える必要があるかどうかを確認しなければなりません。

サーバーは、RFC 6749で定義されているように、付与されたスコープの表示を完全に 省略することができる。この場合、実装は付与されたスコープが要求されたスコープと同じであると仮定します。

このプロパティは Qt 6.9 で導入されました。

アクセス関数です:

QSet<QByteArray> grantedScopeTokens() const

Notifier シグナル:

void grantedScopeTokensChanged(const QSet<QByteArray> &tokens)

QAbstractOAuth2::requestedScopeTokensも参照してください

[read-only, since 6.9] idToken : const QString

このプロパティは、受信したOpenID Connect ID トークンを保持します。

このプロパティは Qt 6.9 で導入されました。

アクセス関数です:

QString idToken() const

Notifier シグナル:

void idTokenChanged(const QString &idToken)

NonceMode,nonce,Qt OpenID Connect Supportも参照してください

[since 6.9] nonce : QString

このプロパティは、認証時にサーバに送信される文字列を保持します。この nonce は、適用可能なトークン応答 (特に OpenID Connectid_token ) を認可段階に関連付けるために使用されます。

nonce の主な目的は、リプレイ攻撃を軽減することです。これは、受信したトークン応答がアプリケーションによって開始された認証要求に対するものであることを保証し、攻撃者が不正なコンテキストでトークンを再利用することを防ぎます。したがって、トークン検証の一部としてnonce検証を含めることが重要である。

実際には、認証サーバーのベンダーは、認証リクエストでnonceが提供されない場合、OpenID Connectリクエストを拒否することがあります。

トークン自体は不透明な文字列であり、互換性を最大化するためにURLセーフな文字のみを含む必要があります。さらに、トークンは攻撃者が推測できないように、適切なエントロピーを提供しなければなりません。nonceには厳密なサイズ制限はなく、認証サーバベンダは独自の最小・最大サイズを課すことができる。

nonce は手動で設定できますが、Qt のクラスは設定されていない場合、32 文字の noncewhen needed を生成します。

このプロパティは Qt 6.9 で導入されました。

アクセス関数です:

QString nonce() const
void setNonce(const QString &nonce)

Notifier シグナル:

void nonceChanged(const QString &nonce)

nonceModeQt OpenID Connect Supportも参照してください

[since 6.9] nonceMode : NonceMode

このプロパティは、現在の nonce モード(nonce が使用されているかどうか)を保持します。

このプロパティは Qt 6.9 で導入されました。

アクセス関数です:

QAbstractOAuth2::NonceMode nonceMode() const
void setNonceMode(QAbstractOAuth2::NonceMode mode)

Notifier シグナル:

void nonceModeChanged(QAbstractOAuth2::NonceMode mode)

NonceMode およびnonceも参照してください

[since 6.9] refreshLeadTime : std::chrono::seconds

このプロパティは、アクセストークンの有効期限に対して、accessTokenAboutToExpire() シグナルがどの程度前に発せられるかを定義する。

このプロパティは、現在のアクセストークンの有効期限が切れる前に、accessTokenAboutToExpire() シグナルが発信される時間間隔(秒)を指定します。このプロパティに設定する値は、正の継続時間でなければなりません。

この間隔により、アプリケーションはトークンを事前にリフレッシュすることができ、中断することなく継続的な認可を確保することができます。

このプロパティが明示的に設定されていない場合、または指定されたleadTimeがトークンの有効期間よりも大きい場合、leadTimeはトークンの残りの有効期間の5%にデフォルト設定されます。

注意: Expirationシグナルは、認証サーバーが適切な有効期限時間を提供している場合にのみ機能します。

このプロパティは Qt 6.9 で導入されました。

アクセス関数です:

std::chrono::seconds refreshLeadTime() const
void setRefreshLeadTime(std::chrono::seconds leadTime)

Notifier シグナル:

void refreshLeadTimeChanged(std::chrono::seconds leadTime)

autoRefreshも参照してください

[since 6.9] requestedScopeTokens : QSet<QByteArray>

このプロパティは、クライアントが要求するパーミッションを定義する、希望するスコープを保持する。

注意: スコープ・トークンは、印刷可能なUS-ASCII文字のサブセットに制限されています。この範囲外の文字の使用はサポートされていません。

このプロパティは Qt 6.9 で導入されました。

アクセス関数です:

QSet<QByteArray> requestedScopeTokens() const
void setRequestedScopeTokens(const QSet<QByteArray> &tokens)

Notifier シグナル:

void requestedScopeTokensChanged(const QSet<QByteArray> &tokens)

QAbstractOAuth2::grantedScopeTokensも参照してください

[until 6.13] scope : QString

このプロパティはバージョン6.13で廃止予定です。

代わりにrequestedScopeTokensgrantedScopeTokens プロパティを使用してください。このプロパティは Qt 7 で削除される予定です。

このプロパティは、クライアントによって要求されたパーミッションを定義する希望のスコープを保持します。

スコープ値は、認証サーバーによって付与されたスコープ値に更新されます。スコープ応答が空の場合、要求されたスコープは許可されたものとみなされ、変更されません

このプロパティが、最初は要求されたスコープとして、後には付与されたスコープとして、2つの異なる役割を果たすという事実は、歴史的な産物です。新しいコードはすべて、QAbstractOAuth2::requestedScopeTokensQAbstractOAuth2::grantedScopeTokens を使うことを推奨します。

アクセス関数

QString scope() const
void setScope(const QString &scope)

ノーティファイアシグナル:

void scopeChanged(const QString &scope)

QAbstractOAuth2::grantedScopeTokens およびQAbstractOAuth2::requestedScopeTokensも参照のこと

state : QString

このプロパティは、認証中にサーバに送信される文字列を保持する。この状態は、コールバックを受信したときにリクエストを識別し、検証するために使用されます。

state 要素では、特定の文字が不正です (RFC 6749 を参照)。不正な文字を使用すると、意図しないステートの不一致が発生し、OAuth 2 の認証に失敗する可能性があります。したがって、不正な文字を含む値を設定しようとすると、その状態は無視され、警告が記録されます。

アクセス関数

QString state() const
void setState(const QString &state)

通知シグナル

void stateChanged(const QString &state)

[since 6.9] tokenUrl : QUrl

このプロパティは、トークンを取得するために使用されるトークンエンドポイント URL を保持します。ユースケースと認証サーバーのサポートに応じて、これらのトークンはアクセストークン、リフレッシュトークン、および ID トークンになります。

トークンは通常、認可段階が完了すると取得されます。トークン・エンドポイントは、必要に応じてトークンをリフレッシュするためにも使用できます。

例えば、QOAuth2AuthorizationCodeFlow はこの url を使用してアクセストークン要求を発行し、QOAuth2DeviceAuthorizationFlow はこの url を使用してアクセストークンをポーリングします。

このプロパティは Qt 6.9 で導入されました。

アクセス関数です:

QUrl tokenUrl() const
void setTokenUrl(const QUrl &tokenUrl)

Notifier シグナル:

void tokenUrlChanged(const QUrl &tokenUrl)

userAgent : QString

このプロパティは、ネットワークリクエストの作成に使用される User-Agent ヘッダを保持します。

デフォルト値は "QtOAuth/1.0 (+https://www.qt.io) "です。

アクセス関数

QString userAgent() const
void setUserAgent(const QString &userAgent)

Notifier シグナル:

void userAgentChanged(const QString &userAgent)

メンバ関数ドキュメント

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

parent を親として QAbstractOAuth2 オブジェクトを構築します。

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

parent を親として QAbstractOAuth2 オブジェクトを構築し、manager をネットワーク・アクセス・マネージャーとして設定します。

[virtual noexcept] QAbstractOAuth2::~QAbstractOAuth2()

QAbstractOAuth2 インスタンスを破棄します。

[signal, since 6.9] void QAbstractOAuth2::accessTokenAboutToExpire()

このシグナルは、アクセストークンの有効期限が近づいたときに発せられます。

このシグナルを発するには、アクセストークンが有効な有効期限を持っている必要があります。このシグナルを手動で処理する方法として、autoRefresh を使う方法があります。

この関数は Qt 6.9 で導入されました。

refreshLeadTime,autoRefresh,refreshTokens()も参照してください

[signal] void QAbstractOAuth2::authorizationCallbackReceived(const QVariantMap &data)

リプライサーバーがサーバーから認可コールバックを受信したときに発せられるシグナル。data はサーバーから受信した値を含む。

void QAbstractOAuth2::clearNetworkRequestModifier()

ネットワーク要求修飾子をクリアする。

setNetworkRequestModifier()も参照

[virtual invokable] QUrl QAbstractOAuth2::createAuthenticatedUrl(const QUrl &url, const QVariantMap &parameters = QVariantMap())

返される URL はurl を元に、与えられたparameters とアクセストークンを組み合わせたものです。

注: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

[override virtual invokable, until 6.11] QNetworkReply *QAbstractOAuth2::deleteResource(const QUrl &url, const QVariantMap &parameters = QVariantMap())

この関数はバージョン6.11で廃止予定です。

再インプリメントです:QAbstractOAuth::deleteResource(const QUrl &url, const QVariantMap &parameters) を再実装しています。

代わりにQtNetwork クラスを直接使用してください。

認証された DELETE リクエストを送信し、新しいQNetworkReply を返します。urlparameters がリクエストの作成に使用されます。

こちらも参照してくださいハイパーテキスト転送プロトコル - HTTP/1.1 も参照のこと:DELETE

注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

[signal, until 6.13] void QAbstractOAuth2::error(const QString &error, const QString &errorDescription, const QUrl &uri)

この関数はバージョン6.13で廃止予定です。

代わりにserverReportedErrorOccurred を使用してください。

RFC 6749 のエラー応答に定義されているように、サーバが認可リクエストに対して エラーを応答したときに発行されるシグナルです。

error はエラーの名前である。 はエラーを説明し、 はエラーに関する詳細情報を含むオプションのURIである。errorDescription uri

QAbstractOAuth::requestFailed() およびQAbstractOAuth2::serverReportedErrorOccurred()も参照の こと。

[override virtual invokable, until 6.11] QNetworkReply *QAbstractOAuth2::get(const QUrl &url, const QVariantMap &parameters = QVariantMap())

この関数はバージョン6.11で廃止予定です。

再インプリメントです:QAbstractOAuth::get(const QUrl &url, const QVariantMap &parameters) を再実装しています。

代わりにQtNetwork クラスを直接使用してください。

認証された GET リクエストを送信し、新しいQNetworkReply を返します。urlparameters がリクエストの作成に使用されます。

こちらも参照してくださいハイパーテキスト転送プロトコル - HTTP/1.1 も参照してください:GET

注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

この関数はバージョン6.11で廃止予定です。

再インプリメントです:QAbstractOAuth::head(const QUrl &url, const QVariantMap &parameters) を再実装しています。

代わりにQtNetwork クラスを直接使用してください。

認証された HEAD リクエストを送信し、新しいQNetworkReply を返します。urlparameters がリクエストの作成に使われます。

こちらも参照してくださいハイパーテキスト転送プロトコル - HTTP/1.1 も参照のこと:HEAD

注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

[override virtual invokable, until 6.11] QNetworkReply *QAbstractOAuth2::post(const QUrl &url, const QVariantMap &parameters = QVariantMap())

この関数はバージョン6.11で廃止予定です。

再インプリメントです:QAbstractOAuth::post(const QUrl &url, const QVariantMap &parameters) を再実装しています。

代わりにQtNetwork クラスを直接使用してください。

認証された POST リクエストを送信し、新しいQNetworkReply を返します。urlparameters がリクエストの作成に使用されます。

こちらも参照してくださいハイパーテキスト転送プロトコル - HTTP/1.1 も参照してください:POST

注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

[virtual invokable, until 6.11] QNetworkReply *QAbstractOAuth2::post(const QUrl &url, QHttpMultiPart *multiPart)

この関数はバージョン6.11で廃止予定です。

代わりにQtNetwork クラスを直接使用してください。

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

認証された POST リクエストを送信し、新しいQNetworkReply を返します。リクエストの作成にはurlmultiPart が使われます。

{ハイパーテキスト転送プロトコル - HTTP/1.1:POST}

注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

post()、QHttpMultiParthttps://tools.ietf.org/html/rfc2616#section-9.6 も参照してください。

[virtual invokable, until 6.11] QNetworkReply *QAbstractOAuth2::post(const QUrl &url, const QByteArray &data)

この関数はバージョン6.11で廃止予定です。

代わりにQtNetwork クラスを直接使用してください。

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

認証された POST リクエストを送信し、新しいQNetworkReply を返します。リクエストの作成にはurldata が使われます。

{ハイパーテキスト転送プロトコル - HTTP/1.1:POST}

注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

post() およびhttps://tools.ietf.org/html/rfc2616#section-9.6 も参照して ください。

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

再実装:QAbstractOAuth::prepareRequest(QNetworkRequest *request, const QByteArray &verb, const QByteArray &body).

[override virtual invokable, until 6.11] QNetworkReply *QAbstractOAuth2::put(const QUrl &url, const QVariantMap &parameters = QVariantMap())

この関数はバージョン6.11で廃止予定です。

再インプリメントです:QAbstractOAuth::put(const QUrl &url, const QVariantMap &parameters) を再実装しています。

代わりにQtNetwork クラスを直接使用してください。

認証された PUT リクエストを送信し、新しいQNetworkReply を返します。urlparameters がリクエストの作成に使用されます。

こちらも参照してくださいハイパーテキスト転送プロトコル - HTTP/1.1 も参照のこと:PUT

注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

[virtual invokable, until 6.11] QNetworkReply *QAbstractOAuth2::put(const QUrl &url, QHttpMultiPart *multiPart)

この関数はバージョン6.11で廃止予定です。

代わりにQtNetwork クラスを直接使用してください。

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

認証された PUT リクエストを送信し、新しいQNetworkReply を返します。urlmultiPart はリクエストの作成に使用されます。

{ハイパーテキスト転送プロトコル - HTTP/1.1:PUT}

注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

put()、QHttpMultiParthttps://tools.ietf.org/html/rfc2616#section-9.6 も参照してください。

[virtual invokable, until 6.11] QNetworkReply *QAbstractOAuth2::put(const QUrl &url, const QByteArray &data)

この関数はバージョン6.11で廃止予定です。

代わりにQtNetwork クラスを直接使用してください。

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

認証された PUT リクエストを送信し、新しいQNetworkReply を返します。urldata はリクエストの作成に使用されます。

{ハイパーテキスト転送プロトコル - HTTP/1.1:PUT}

注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

put() およびhttps://tools.ietf.org/html/rfc2616#section-9.6も参照してください

QString QAbstractOAuth2::refreshToken() const

現在のリフレッシュトークンを取得します。

リフレッシュトークンは通常、アクセストークンよりも寿命が長いので、 後で使うために保存しておくことは理にかなっています。

現在のリフレッシュ・トークン、あるいは利用可能なリフレッシュ・トークンがない場合は空の文字列を返します。

注意: プロパティ refreshToken のゲッター関数です。

setRefreshToken()も参照してください

[slot, since 6.9] void QAbstractOAuth2::refreshTokens()

トークンをリフレッシュするには、この関数を呼び出します。この関数はrefreshTokensImplementation() を呼び出し、実際のリフレッシュを実行します。

この関数は Qt 6.9 で導入されました。

refreshTokensImplementation() およびautoRefreshも参照してください

[protected slot, since 6.9] void QAbstractOAuth2::refreshTokensImplementation()

このスロットは、トークン・リフレッシュ・リクエストを送信するために、refreshTokens ()によって呼び出される。

派生クラスは、トークンのリフレッシュをサポートするために、このスロットを再実装する必要があります

classMyClass :publicQAbstractOAuth2 { ...protectedQ_SLOTS:voidrefreshTokensImplementation() QT7_ONLY(override); };voidMyClass::refreshTokensImplementation(){
    qDebug("refresh");
}

この関数はQt 6.9で導入されました。

autoRefreshaccessTokenAboutToExpire()も参照してください

QString QAbstractOAuth2::responseType() const

使用したresponse_type を返します。

[signal, since 6.9] void QAbstractOAuth2::serverReportedErrorOccurred(const QString &error, const QString &errorDescription, const QUrl &uri)

RFC 6749のエラー応答に定義されているように、サーバーが認可リクエストに対して エラーを応答したときに発行されるシグナル。

error はエラーの名前である。 はエラーを説明し、 はエラーの詳細情報を含むオプションのURIである。errorDescription uri

これらのRFCで定義されたエラーを含むすべてのエラーを1つのシグナルでキャッチするには、QAbstractOAuth::requestFailed()を使用してください。

この関数はQt 6.9で導入されました。

[since 6.9] template <typename Functor, QAbstractOAuth2::if_compatible_callback<Functor> = true> void QAbstractOAuth2::setNetworkRequestModifier(const QAbstractOAuth2::ContextTypeForFunctor<Functor> *context, Functor &&callback)

ネットワークリクエスト変更機能をcallback に設定する。 この関数はサーバーに送られるネットワークリクエストをカスタマイズするために使用される。

callback は というシグネチャを実装する必要があります。 には、関数ポインタ、ラムダ、メンバ関数、呼び出し可能な オブジェクトを指定できます。提供される は、リクエストがどのステージに関連するかをチェックするために 使用できる( の場合、トークンリクエスト、トークンリフレッシュリ クエスト、認可リクエスト)。void(QNetworkRequest&, QAbstractOAuth::Stage) QNetworkRequest callback QAbstractOAuth::Stage QOAuth2DeviceAuthorizationFlow

context は、呼び出しの有効期間を制御し、 が破棄された場合に非割り当てリソースへのアクセスを防止する。言い換えると、コンテキストとして提供されたオブジェクトが破壊されると、コールバックは実行されない。 は、有効な を指す必要がある(コールバックがメンバ関数の場合は、実際にメンバ関数を持つ必要がある)。コールバックの結果はすぐに使用されるため、 は インスタンスと同じスレッドに存在する必要があります。context context QObject context QAbstractOAuth2

この関数は Qt 6.9 で導入されました。

clearNetworkRequestModifier() およびQNetworkRequestも参照してください

void QAbstractOAuth2::setRefreshToken(const QString &refreshToken)

使用する新しいリフレッシュ・トークンrefreshToken を設定します。

カスタムのリフレッシュ・トークンを使用して、このメソッドでアクセストークンをリフレッシュし、refreshTokens() でアクセストークンをリフレッシュすることができます。

注: プロパティrefreshToken のセッター関数です。

refreshToken()も参照してください

[since 6.5] void QAbstractOAuth2::setSslConfiguration(const QSslConfiguration &configuration)

クライアントと認証サーバ間で相互 TLS 接続を確立する際に使用する TLSconfiguration を設定します。

この関数は Qt 6.5 で導入されました。

sslConfiguration() およびsslConfigurationChanged()も参照してください

[since 6.5] QSslConfiguration QAbstractOAuth2::sslConfiguration() const

クライアントと認証サーバ間で相互 TLS 接続を確立する際に使用する TLS 設定を返します。

この関数は Qt 6.5 で導入されました。

setSslConfiguration() およびsslConfigurationChanged()も参照してください

[signal, since 6.5] void QAbstractOAuth2::sslConfigurationChanged(const QSslConfiguration &configuration)

このシグナルは、TLSコンフィギュレーションが変更されたときに発せられる。configuration パラメータには新しい TLS コンフィギュレーションが含まれます。

この関数はQt 6.5で導入されました。

sslConfiguration() とsetSslConfiguration()も参照してください

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