В моей конфигурации есть маршрут, который говорит, что для страницы, скажем, /secure
, требуется вход в систему (выполняется через authlogic). Before_filter в моем контроллере позаботится об этом. Это прекрасно работает, доступ к странице и ее ресурсам ограничен - через приложение.
Проблема в том, что мы используем Amazon S3 для хранения в этом приложении (на основе refinerycms), развернутом на heroku. У меня есть ведро, и оно отлично работает.
Однако любой ресурс, вставленный в защищенную часть приложения, напрямую доступен через браузер. Другими словами, страница /secure
содержит такие элементы, как файлы PDF. Хотя ресурсы приложения защищены, эти PDF-файлы доступны из любой точки Интернета (пример URL): http://s3.amazonaws.com/my_bucket/images/1234/the_file_which_should_be_secure.pdf
Могу ли я выполнить детальный контроль доступа на S3? Должен ли я создать новое ведро? В идеале я хотел бы установить флажок на своем ресурсе, который делает его невидимым в Интернете - не знаю.
Любое предложение приветствуется.
P.S. openid.org имеет сертификат ssl с истекшим сроком действия, поэтому необходимо создать новую пустую учетную запись, поскольку я не могу войти