![](/img/trans.png)
[英]AWS Cloudfront Signed Cookie not working on alternate domain
[英]How to use AWS sign v4 API to create a signed cookie?
我收到了来自亚马逊的电子邮件,称Sign v2 API将在月底之前到期。
但是,cloudfront的文档没有提到如何使用sign v4 API。 ( https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-setting-signed-cookie-canned-policy.html )
目前,我使用cloudfront机密签署自定义策略,并使用此值设置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 Request打包为第一步。
CanonicalRequest =
HTTPRequestMethod + '\n' +
CanonicalURI + '\n' +
CanonicalQueryString + '\n' +
CanonicalHeaders + '\n' +
SignedHeaders + '\n' +
HexEncode(Hash(RequestPayload))
我想政策必须出现在请求的某个地方,对吧?
如何构建针对cloudfront签名cookie的规范请求?
CloudFront签名的URL / Cookies与Sigv4请求不同。 Sigv4将对AWS资源进行API调用,例如:连接到不同的AWS端点EC2,S3等以列出,进行任何更改等,而CloudFront签名的URL是使用RSA(公共 - 私有)密钥对创建的,与Sigv4无关。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.