当前位置: 首页 > 知识库问答 >
问题:

AWS CloudFront为S3 Bucket预签名的URL而OAI不工作

墨宜人
2023-03-14

我尝试使用helloworld.html为我的S3 Bucket手动创建CloudFront预签名URL(不使用OAI),如下文所示

https://docs.aws.amazon.com/amazonCloudFront/latest/developerguide/privateContent.html。

    null

我怀疑CloudFront在S3上丢失了IAM策略。我尝试了S3的完全公共访问,但仍然出现AccessDenied错误。AWS用户指南解释了如何使用OAI为CLoudFront编写S3 IAM策略,但没有解释在没有OAI的情况下为CLoudFront预签名URL编写S3 IAM策略。

共有1个答案

贺博厚
2023-03-14

我的步骤有问题,包括计算纪元时间。最终,我通过使用“AWS cloudfront Sign”cli命令生成签名url并追溯到我的缺陷步骤,解决了这个问题。

 类似资料:
  • 标题说明一切。这是我的代码; 我使用节点强大的文件。 成功上传后,url变量返回s3 url,类似以下内容; 下面是我的参数 我错过了什么?

  • 我有下面的lambda,它在将文件上传到bucket并将其预签名的URL发送到API时被触发。 这是生成预先签名的URL,但我无法使用它访问文件。当我在浏览器中键入URL时,我会得到以下信息:, 我尝试使用命令

  • 我试图上传图像/视频使用PHP/Javascript到AWS S3 这是我的PHP代码 这是我的Java脚本代码 所有这些功能工作伟大,我想即使在执行它给我文件上传成功消息too.but当我检查s3什么都没有。 即使在控制台中,它也会像下面一样生成预签名URL。但当我尝试单击它时,它会给我SignatureDesNotMatch错误。(请单击URL)。可能是什么错误。。? https://ibra

  • 如果你想把自己的资源发放给第三方用户访问,但是又不想开放Bucket的读权限,可以通过生成预签名URL的形式提供给用户一个临时的访问URL。在生成URL时,你可以指定URL过期的时间,从而限制用户长时间访问。 生成一个预签名的URL 如下代码: String bucketName = "your-bucket-name"; String key = "your-object-key"; // 设

  • 如果你想把自己的资源发放给第三方用户访问,但是又不想开放Bucket的读权限,可以通过生成预签名URL的形式提供给用户一个临时的访问URL。在生成URL时,你可以指定URL过期的时间,从而限制用户长时间访问。 生成预签名URL来获取Object <?php $url = $client->generatePresignedUrl(array( 'Bucket' => 'your-buck

  • 我试图上传一个图像使用预先签名的网址 我得到了一个类似的url https://s3.eu-west-1.amazonaws.com/bucket/folder/access.JPG?AWSAccessKeyId=xxxx 我已经尝试上传文件与内容类型图像/jpg,多部分/表单数据。 尝试生成没有文件类型和上传的网址。 尝试了放后法 但似乎什么都不管用 错误总是: 我们计算的请求签名与您提供的签名