Условия доступа к политике S3 Bucket

У меня есть политика S3 Bucket, как это, которая отклоняет запросы, если реферер не указан в

{
    "Sid": "6",
    "Effect": "Deny",
    "Principal": "*",
    "Action": "s3:GetObject",
    "Resource": "arn:aws:s3:::my_bucket_name/*",
    "Condition": {
        "StringNotLike": {
            "aws:Referer": [
                "http://example1.com/*",
                "http://example2.com/*",
                "https://*amazon.com*/*" 
            ]
        }
    }
}

обратите внимание, я пытался https://*amazon.com*/*, https://*aws.amazon.com* ,https://*amazon.com*,http://*amazon.com* Моя проблема заключается в том, что я не могу получить реферер (один из сервисов aws) для эластичного трафика, когда он пытается извлечь объект, и, таким образом, задание выдает ошибку, подобную этой: " У вас нет прав, необходимых для чтения указанного объекта из указанное ведро ". Обратите внимание, что все работает нормально, если я удаляю политику. Таким образом, мой вопрос заключается в том, что я должен поставить эластичный транскодер как реферер? Я попробовал пару комбинаций и искал здесь и там, но все напрасно. Пожалуйста, дайте мне знать, если вы думаете, что есть лучший способ для этого.

  • Обновить:

Также есть способ, которым я могу отфильтровать некоторые отклоненные запросы с помощью политики сегмента, например, в вышеупомянутом случае я могу разрешить запрос, который не от доменов выше, но с определенным IP-адресом. Из документов Amazon на этом сайте я увидел, что сначала они проверяют явное отклонение, а затем эти отклоненные запросы не проверяются. Есть ли способ обойти это? Любая помощь будет высоко оценена. Спасибо за ваше время

1 ответ

Вместо создания Bucket Policy, который разрешает доступ для Amazon Elastic Transcoder, разрешения предоставляются через роль службы, используемую службой Transcoder.

До тех пор, пока у служебной роли есть разрешения на доступ к вашим файлам в S3, не нужно предоставлять ее через Bucket Policy. (Хотя я не уверен, что произойдет, если у вас есть активный DENY в ведре политики.)

См.: Сервисные роли для эластичных транскодерных трубопроводов.

Другие вопросы по тегам