AWS S3對象無法下載——This XML file does not appear to have any style information associated with it

最近,需要從AWS S3上下載渲染後的圖片,遇到了如下問題:


This XML file does not appear to have any style information associated with it. The document tree is shown below.

<Error>
<Code>AccessDenied</Code>
<Message>Access Denied</Message>
<RequestId>9695588FE619D9CA</RequestId>
<HostId>
+Kce7U7E7J1gdbrZVjgsoasJauHiIFxwVqRkLXPsg0kezaJvzI92U/3Ao2N1XwiqNdv1UEhSBTo=
</HostId>
</Error>

原因是上傳到S3的文件默認是私有的。

如果通過AWS控制檯進行下載,可以選中該文件,選擇“公開”,之後就有下載權限了。如下所示:


如果想要默認情況下公開某存儲桶中的部分或全部內容,需要設置存儲桶策略。如下所示:

https://awspolicygen.s3.cn-north-1.amazonaws.com.cn/policygen.html

點擊上述鏈接,進入如下界面進行相關設置:


設置完成後,點擊會生成json格式的存儲桶策略:

{
  "Id": "Policy1512913721966",
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Stmt1512913719687",
      "Action": [
        "s3:GetObject"
      ],
      "Effect": "Allow",
      "Resource": "arn:aws-cn:s3:::bucket-my",
      "Principal": "*"
    }
  ]
}

接着打開AWS S3控制檯,在待設置的存儲桶“權限”中選擇“存儲桶策略”,將上面json字段複製到編輯器中保存即可。






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章