Добавление дополнительных заголовков в Carrierwave для шифрования Amazon s3 - PullRequest
12 голосов
/ 02 февраля 2012

Короче говоря
Короче говоря, я хочу знать, могу ли я отправить дополнительные заголовки через соединение с несущей волной и туманом в Amazon s3?

Глубина
Недавно я обнаружил, что amazon поддерживает шифрование файлов на стороне клиента и сервера.подробнее »http://docs.amazonwebservices.com/AmazonS3/latest/dev/SSEUsingRESTAPI.html

В настоящее время я использую carrierwave в приложении rails для загрузки файлов в amazon s3.
Для шифрования на стороне сервера amazon запрашивает заголовок x-amz-server-side-encryption = AES256 добавлено к запросу.

Так что я пытаюсь выяснить, как отправить дополнительные заголовки через мою несущую и туман.

MyЯ подумал, что, возможно, я мог бы использовать строку конфигурации fog_attribute что-то вроде следующего, и, возможно, это могло бы сработать, но я не уверен, что fog_attribute предназначен для атрибута partiular или просто для общего заголовка.

config.fog_attributes = {'x-amz-server-side-encryption' => 'AES256','Cache-Control'=>'max-age=315576000'}  # optional, defaults to {}

Итак, я наконец-то получил свое приложение в форме, чтобы проверить это, но, к сожалению, оно не сработало.

Я также нашел это: https://github.com/geemus/fog/commit/070e2565d3eb08d0daaa258ad340b6254a9c6ef2 commit в хранилище fog, которое заставляет меня чувствовать, что fog_attributes предназначен для определенного списка атрибутов.

Должен быть способ заставить эту работу.Кто-нибудь? * * 1030

Ответы [ 2 ]

4 голосов
/ 23 февраля 2012

Я считаю, что на самом деле это должно быть правильно, однако заметьте, что я не верю, что шифрование на стороне сервера было выпущено, поэтому вам нужно будет использовать пограничный туман, чтобы получить такое поведение. Я надеюсь сделать релиз в ближайшее время, и тогда должно быть хорошо идти. Если вы обнаружите, что все еще не можете заставить его работать на грани, дайте мне знать, и мы попробуем и посмотрим, что можно сделать.

1 голос
/ 23 июня 2012

Я не могу говорить о CarrierWave, но это работает для сохранения файлов с шифрованием AWS256 с (в настоящее время) стандартным распределением Fog:

file.attributes[:encryption ] = "AES256"
result = file.save()

Однако это не работает для копирования файлов.Что работает для копирования:

fogfile.copy(@bucket_archived, newfilename, {'x-amz-server-side-encryption' => 'AES256'})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...