Я получил электронное письмо от Amazon, в котором говорится, что срок действия API Sign v2 истекает до конца месяца.
Но в документации по Cloudfront нет упоминаний о том, как использовать API sign v4.(https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-setting-signed-cookie-canned-policy.html)
В настоящее время я подписываю пользовательскую политику с секретом облачного фронта и устанавливаю cookie с этим значением.
Пример:
Set-Cookie:
Domain=optional domain name;
Path=/optional directory path;
Secure;
HttpOnly;
CloudFront-Signature=hashed and signed version of the policy statement
ПодробнееВы можете проверить этот ответ: https://stackoverflow.com/a/29636496/58129
Я не уверен, как я могу вписать пользовательскую политику в запрос Canonical. (https://docs.aws.amazon.com/general/latest/gr/sigv4-create-canonical-request.html)
Он ожидает, что я упакую запрос Canonicalв качестве первого шага.
CanonicalRequest =
HTTPRequestMethod + '\n' +
CanonicalURI + '\n' +
CanonicalQueryString + '\n' +
CanonicalHeaders + '\n' +
SignedHeaders + '\n' +
HexEncode(Hash(RequestPayload))
Я полагаю, что политика должна присутствовать где-то в запросе, верно?
Как я могу сконструировать этот канонический запрос для cookie-файла, подписанного облачным фронтом?