Назад | Перейти на главную страницу

Доступ к CloudFront S3 запрещен

У меня есть одна учетная запись с привилегиями для управления S3 (S3_User), а другая - для управления Cloud Front (Cloud_Front_User).

Теперь я создал ведро "bucketname" с S3_User и дистрибутив с Cloud_Front_User с origin my S3 Bucket.

Когда я пытался получить доступ к ресурсу через Cloudfront, я получаю следующее

<Error>
<Code>AccessDenied</Code>
<Message>Access Denied</Message>
<RequestId>555667558C0B2698</RequestId>
<HostId>
QP0y2/XTsJqItm815aDsdoLTF853zMeEPUAykvxjzdFfU1WwfXHioa6CeLWmc96RDVJopBu+eLE=
</HostId>
</Error>

Я установил это: http://cl.ly/image/1s0I1H3A3p1N

но когда я нажимаю «Сохранить», через некоторое время я получаю сообщение об ошибке, в котором говорится, что не удалось установить идентификацию в корзине S3. Я думаю, это потому, что я управляю CLoudFront с помощью «Cloud_Front_User» и S3 с «S3_User». Итак, как я могу вручную настроить политику 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/*"
        }
    ]
}

См. Это решение ..

https://havecamerawilltravel.com/photographer/how-allow-public-access-amazon-bucket

Как разрешить публичный доступ к корзине Amazon S3 Если вы пытаетесь разрешить кому-либо загружать или открывать файлы в корзине Amazon S3, вот как это сделать.

веб-сервисы Amazon

  1. Скопируйте и вставьте этот код во всплывающее окно редактора политики сегмента. Вам нужно будет заменить YOUR-BUCKET-NAME на свое полное название сегмента.

Образец политики:

{
  "Version": "2008-10-17",
  "Statement": [
    {
      "Sid": "AllowPublicRead",
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::YOUR-BUCKET-NAME/*"
    }
  ]
}