Доступ к корзине Django Storage S3 с ролью IAM

У меня есть экземпляр EC2 с ролью IAM. Эта роль имеет полный доступ к s3. Команда aws cli работает отлично, как и проверка метаданных curl для получения временных ключей доступа и секретных ключей.

Я также читал, что когда ключи доступа и секретные ключи отсутствуют в модуле настроек, boto автоматически получит временные ключи из URL-адреса метаданных.

Однако я не могу получить доступ к файлам css / js, хранящимся в ведре, через браузер. Когда я добавляю политику корзины, разрешающую принципалу *, все работает.

Я пробовал следующую политику:

{
"Version": "2012-10-17",
"Id": "PolicyNUM",
"Statement": [
    {
        "Sid": "StmtNUM",
        "Effect": "Allow",
        "Principal": {
            "AWS": "arn:aws:iam::account-id:role/my-role"
        },
        "Action": "s3:*",
        "Resource": "arn:aws:s3:::my-bucket/*"
    }
]

}

Но все css / js по-прежнему получают 403-е. Что я могу изменить, чтобы он заработал?


person Sam Hammamy    schedule 06.05.2015    source источник
comment
Вы избавите себя от множества проблем, просто добавив ключи доступа и секретные ключи в свои производственные настройки. Вы помогаете настроить файл конфигурации?   -  person jape    schedule 01.08.2015


Ответы (2)


Запросы из вашего браузера не могут отправлять требуемые заголовки authz, которые бото обрабатывает для вас в другом месте. Политика корзины не может определить участника и правильно отклоняет запрос.

Например, добавьте еще один sid в раздел Разрешить принцип * доступ ко всему в / public.

person someone    schedule 01.08.2015

Причина в том, что AWS устанавливает для ваших файлов двоичный / октетный поток.

проверьте это решение, чтобы справиться с этим.

person Amit Talmor    schedule 07.05.2015
comment
Я получаю 403 для всех css, js и файлов изображений. Это не проблема css !! - person Sam Hammamy; 07.05.2015
comment
извините, просто пытался помочь. - person Amit Talmor; 08.05.2015