【问题标题】:How do I add a policy to my Amazon S3 Bucket?如何向我的 Amazon S3 存储桶添加策略?
【发布时间】:2015-08-15 19:43:48
【问题描述】:

我正在尝试使用 Amazon AWS S3 建立一个静态网站,并关注 this guide。但是,每当我尝试将策略应用于根域存储桶以便人们可以看到该网站时,都会收到错误消息。

该指南告诉我将以下内容复制/粘贴到存储桶策略编辑器中,我这样做了,我将“example.com”替换为我的存储桶名称,因为它告诉我这样做。

{
  "Version":"2012-10-17",
  "Statement": [{
    "Sid": "Allow Public Access to All Objects",
    "Effect": "Allow",
    "Principal": "*",
    "Action": "s3:GetObject",
    "Resource": "arn:aws:s3:::example.com/*"
  }
 ]
}

但每次单击“保存”时,我都会收到 Policy could not be parsed as a valid JSON string 错误。

【问题讨论】:

  • 获取您正在生成的策略并使用诸如jsonlint.com 之类的工具对其进行验证。如果它在结构上无效,该工具应该会给你一些关于错误的反馈。如果您的存储桶已经具有策略,您不能只是将额外的策略粘贴到框中;您必须将新语句与现有语句结合起来,或者在适当的情况下替换它们。
  • hmm... jsonlint.com 说它是一个有效的 JSON 字符串。我没有添加任何策略,但可能与我单击的某些设置冲突。真可惜。谢谢迈克尔!
  • 注意 jsonlint 如何清理格式?嗯......这应该没关系,有效的 json 不应该依赖于琐碎的空白......但您可以尝试获取 jsonlint 的输出并将其粘贴回 S3 控制台。没有其他设置可以在这里引起冲突,fwiw。
  • 我刚刚复制并粘贴了此策略,并将其作为存储桶策略添加到我自己的一个存储桶上。正如您所说,我还将“example.com”替换为我的存储桶名称。它工作得很好,我没有出错。我猜你不小心输入了一些额外的东西。

标签: amazon-web-services amazon-s3


【解决方案1】:

傻苹果 Mac TextEdit 添加不同类型的引号“

检查所有引号并在 jsonlint.com 中重新键入它们

应该像对我一样修复任何错误。

【讨论】:

    猜你喜欢
    • 2011-09-10
    • 2023-02-26
    • 2013-01-08
    • 1970-01-01
    • 2013-12-21
    • 2023-03-31
    • 1970-01-01
    • 2016-06-13
    • 2016-08-05
    相关资源
    最近更新 更多