2015-05-14 2 views
0

Я начал использовать mongodb в своем приложении, и теперь я ищу простой способ зашифровать некоторые чувствительные двоичные данные и сохранить их в mongodb. Когда я делаю это для своей базы данных MySql, я использую attr_encrypted, но я предполагаю, что с помощью mongoid мне понадобится другой камень или метод для этого, особенно с нестрочным полем (BSON :: Binary).mongoid: как сохранить зашифрованное BSON :: двоичное поле?

Любые предложения?

ответ

1

Во-первых attr_encrypted работает с Mongoid/другими DataMappers. это похоже на то, как вы используете его с SQL.

В противном случае вы всегда можете проверить rails library на базовое шифрование.

Но, если вы ищете конкретный драгоценный камень, который работает с Mongoid, вы можете пойти с любым из этих двух вариантов - (я не включил старые/неактивные драгоценные камни, но вы можете проверить полный список here)

symmetric-encryption

Вот how-to blog. Это, однако, не Монгоид.

Второй вариант: mongoid-encrypted-fields Это мангоидный специфический, хотя и немного менее популярный. Подробнее here.

Надеюсь, это поможет! :)

+0

Как работает attr_encrypted с BSON :: Binary field? – benams

+0

@benams Для полей, отличных от строк, вам придется использовать сортировку. См. Https://github.com/attr-encrypted/attr_encrypted#marshaling и http://ruby-doc.org/core-2.2.2/Marshal.html. Это может быть полезно также http://dev.mensfeld.pl/2014/01/ruby-rails-objects-serialization-marshal-mongoid-and-performance-matters/ –

Смежные вопросы