Защита S3 через ваше собственное приложение - PullRequest
1 голос
/ 23 марта 2010

Представьте себе следующий вариант использования:

У вас есть приложение в стиле basecamp для размещения файлов с S3. Все учетные записи имеют свои собственные файлы, но хранятся на S3.

Как, следовательно, разработчик может обеспечить защиту файлов, чтобы пользователи учетной записи 1 не могли каким-либо образом получить доступ к файлам учетной записи 2?

Мы говорим на Rails, если это поможет.

Ответы [ 4 ]

1 голос
/ 15 февраля 2012

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

http://www.miracletutorials.com/s3-amazon-expiring-urls/

0 голосов
/ 23 марта 2010

Обслуживание файлов с использованием экземпляра EC2

Если вы установите для своей корзины S3 частную, а затем запустите экземпляр EC2, вы сможете подавать файлы на S3 через EC2, используя экземпляр EC2 для проверки разрешений на основе правил вашего приложения. Поскольку EC2 не взимает плату за передачу в / из S3 (в том же регионе), вам не нужно удваивать свои расходы на пропускную способность в Amazon.

0 голосов
/ 23 марта 2010

Я не занимался именно этой проблемой. Но это не мешает мне иметь мнение:)

Проверьте канкан:

Это позволяет настраивать схемы авторизации без особых хлопот.

0 голосов
/ 23 марта 2010

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

Вы должны быть осторожны с таким подходом, поскольку он может привести к блокировке вашего потока ruby ​​во время прокси-файла, что может стать реальной проблемой для приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...