AWS 预签名 Post URL 突然停止工作

AWS Pre-Signed Post URL suddenly stopped working

所以我已经使用 aws-s3 post 签名 URL 一个月了,它突然变得很有魅力(我没有为我的 IAM 用户或存储桶更改任何策略)它开始给我禁止的请求。

<?xml version="1.0" encoding="UTF-8"?>
<Error>
    <Code>AccessDenied</Code>
    <Message>Invalid according to Policy: Policy expired.</Message>
</Error>

我发现 AWS 给我发了一封电子邮件,通知我我的踪迹已结束,这与它有什么关系吗。

注意:我仍然可以手动将文件上传到我的 s3

编辑

代码

const params = {
    Bucket: 'ratemycourses',
    Fields: {
      key: `profileImage/${userId}/profile.jpeg`,
      acl: 'public-read',
      'Content-Type': 'multipart/form-data',
    },
    Expires: 60,
  };
  const data = await s3.createPresignedPost(params) //I made the callback function promisifed;
  return data;

您的 POST 策略中的过期元素指定策略的过期 date/time。您的保单似乎已过期。更正策略过期时间,然后重新创建您签名的 URL.

这是一个 POST 政策的例子:

{
    "expiration": "2021-07-10T12:00:00.000Z",
    "conditions": [
        {"bucket": "mybucket" },
        ["starts-with", "$key", "user/shahda/"],
    ]
}