Amazon-S3
CloudFront S3 訪問被拒絕
我有一個帳戶有權管理 S3 (S3_User),另一個帳戶有權管理 Cloud Front (Cloud_Front_User)。
現在,我已經使用 S3_User 創建了一個儲存桶“bucketname”,並使用 Cloud_Front_User 創建了一個分配,其來源是我的 S3 儲存桶。
當我嘗試通過 Cloudfront 訪問資源時,我得到了這個
<Error> <Code>AccessDenied</Code> <Message>Access Denied</Message> <RequestId>555667558C0B2698</RequestId> <HostId> QP0y2/XTsJqItm815aDsdoLTF853zMeEPUAykvxjzdFfU1WwfXHioa6CeLWmc96RDVJopBu+eLE= </HostId> </Error>
我已經設置了這個:http ://cl.ly/image/1s0I1H3A3p1N
但是當我點擊“保存”時,一段時間後我收到一條錯誤消息,指出它無法在 S3 儲存桶上設置身份。我認為這是因為我使用“Cloud_Front_User”管理 CLoudFront,使用“S3_User”管理 S3。那麼,如何在儲存桶上手動設置 S3 策略以允許 CloudFront 訪問 s3?
S3 儲存桶策略
{ "Version": "2012-10-17", "Id": "PolicyForCloudFrontPrivateContent", "Statement": [ { "Sid": " Grant a CloudFront Origin Identity access to support private content", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity E780000000000" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::socialacademy/*" } ] }
解決了更改我的網址
從
http://ID.cloudfront.net/bucket/uploads/academy/logo/1/logo.jpg
到
看到這個解決方案..
https://havecamerawilltravel.com/photographer/how-allow-public-access-amazon-bucket
如何允許公開訪問 Amazon S3 儲存桶 如果您嘗試允許任何人下載或打開 Amazon S3 儲存桶中的文件,請按照以下步驟操作。
亞馬遜網路服務
- 將此程式碼複製並粘貼到 Bucket Policy Editor 彈出視窗中。您需要將“YOUR-BUCKET-NAME”替換為您的完整儲存桶名稱。
範例政策:
{ "Version": "2008-10-17", "Statement": [ { "Sid": "AllowPublicRead", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::YOUR-BUCKET-NAME/*" } ] }