20 #ifndef AWSSIGNATUREV3_P_H
21 #define AWSSIGNATUREV3_P_H
23 #include "qtawsglobal.h"
24 #include "awsabstractsignature_p.h"
26 #include <QCryptographicHash>
28 #include <QNetworkAccessManager>
36 class QTAWS_EXPORT AwsSignatureV3Private :
public AwsAbstractSignaturePrivate {
39 AwsSignatureV3Private(
const QCryptographicHash::Algorithm hashAlgorithm,
AwsSignatureV3 *
const q);
42 const QNetworkAccessManager::Operation operation,
43 QNetworkRequest &request,
const QByteArray &payload)
const;
45 void setDateHeader(QNetworkRequest &request,
const QDateTime &dateTime = QDateTime::currentDateTimeUtc())
const;
48 const QCryptographicHash::Algorithm hashAlgorithm;
50 QByteArray algorithmDesignation(
const QCryptographicHash::Algorithm algorithm)
const;
53 const QNetworkAccessManager::Operation operation,
54 QNetworkRequest &request,
const QByteArray &payload)
const;
56 QByteArray canonicalHeader(
const QByteArray &headerName,
const QByteArray &headerValue)
const;
58 QByteArray canonicalHeaders(
const QNetworkRequest &request, QByteArray *
const signedHeaders)
const;
60 QByteArray canonicalRequest(
const QNetworkAccessManager::Operation operation,
const QNetworkRequest &request,
61 const QByteArray &payload, QByteArray *
const signedHeaders)
const;
63 static inline bool isHttps(
const QNetworkRequest &request);
67 friend class TestAwsSignatureV3;
Interface class for providing AWS credentials.
Definition: awsabstractcredentials.h:30
Implements AWS Signature Version 3.
Definition: awssignaturev3.h:32