Шифрование / дешифрование файлов с использованием Carrierwave и сохранение в S3 (Rails) - PullRequest
5 голосов
/ 01 сентября 2011

Мне нужно иметь возможность шифровать файлы перед их сохранением на S3, а затем расшифровывать их при доступе к ним. Файлы будут изображения, документы, PDF и т. Д.

Я использую Carrierwave для обработки загрузки и хранения файлов (это с Ruby on Rails). Я храню их в Amazon S3.

Кто-нибудь делал это или есть идеи, как этого достичь?

Спасибо.

Ответы [ 3 ]

4 голосов
/ 15 октября 2011

Amazon выпустила функциональность, которая позволяет автоматически шифровать / дешифровать файлы в S3.Необходимости сделать это самостоятельно больше нет.Подробности здесь http://docs.amazonwebservices.com/AmazonS3/latest/dev/index.html?UsingEncryption.html

3 голосов
/ 01 сентября 2011

Чтобы справиться с шифрованием, вы должны посмотреть на реализацию процессора. Если вы используете какие-либо другие процессоры, вам, возможно, придется взглянуть на расширение драгоценного камня Carrierwave и добавление механизма упорядочения процессоров, чтобы вы могли быть уверены, что шифрование будет последним.

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

2 голосов
/ 28 ноября 2011

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

http://github.com/dougc84/carrierwave_securefile

...