2012-01-10 8 views
26

MongoDBを使用して個人情報を安全に保管するwebappを設計しようとしています。データベース全体を暗号化したいのですが、サポートされていないようです。データベースを暗号化するためにどのようなルートをとることができますか?MongoDBデータベース暗号化

+0

あなたはそれに挿入したデータを暗号化して(それは厄介です)、DBが格納されているファイルシステムを暗号化したり、ソケット接続を暗号化したりすることができます。脅威モデルとは何ですか? – symcbean

+1

パスワードやその他のプライベートデータを管理するクラウドベースのパーソナルオーガナイザーを作りたいと思っています。私は、データベースに入るデータを暗号化するだけでなく、ユーザーが送信しているデータの種類を知りたくはありません。 データベースを暗号化されたボリュームに置くことに傾いていますが、ボリュームがマウントされてもセキュリティ上のリスクがあります。 – devnill

答えて

10

MongoDB 3.2は(November 2015にリリース)午前は、暗号化されたストレージエンジンを提供しています。サードパーティのAPIを使用して、挿入する前にデータを暗号化したり、ドライブ全体を暗号化する必要はありません。詳細はhereです。

3.0以降、デフォルトのMMAPv1ストレージエンジンの代替として含まれているWiredTigerストレージエンジンで動作します。データベースでMMAPv1を使用している場合は、データベースをMMAPv1からWiredTigerに変換する手順については、this guideを参照してください。

+18

この機能はMongoDB Enterprise Editionでのみ使用できます。 –

10

大きな質問です!ビッグデータが増加しているため、安心してデータを保護することがこれまで以上に重要になっています。

MongoDBは、これを直接サポートしていませんが、(それはあまりにも他のNOSQLデータベース・システムで動作しますが)Gazzangの暗号&鍵管理プラットフォームは、具体的にMongoDBのために調整されています。これはLinuxのオープンソースeCryptfs暗号化されたファイルシステムの上に構築された商用ソリューションであり、パフォーマンスに与える悪影響を最小限に抑えてセキュリティが最大化されるように、基礎となるファイルシステムの暗号化を実行します。

カスタマイズ可能なアクセス制御リストを使用すると、暗号化されていないMongoDBデータには、選択したユーザーまたはプロセスのみがアクセスできます。詳細については、Big Data Security whitepaperをチェックするか、www.securingbigdata.comをご覧ください。

私はGazzangに雇われています。

+0

あなたのソリューションは個人に適していますか?つまり、売り物や頒布のために何も開発していないのですか私は現在、sqlcipherを使用して私の個人的なsqlite dbsを暗号化しています。そのアイデアは、暗号化されたデータベースをDropBoxのようなものに安全に保存できるということです。基本的には、「クライアントとサーバープロセスを信頼して、鍵を渡すのは大丈夫ですが、ストレージは読み込めません」というモデルなので、暗号化されていないものは記憶媒体に触れません。 – Michael

+0

@benjamincarterホワイトペーパーに関する最初のリンクはもう入手できません。 –

1

LUKSを使用してデータ量を暗号化することをおすすめします。ファイルシステムベースの暗号化と比べて、セットアップと管理がかなり簡単です。また、Linuxの様々なフレーバーに移植可能で、パスワードを変更できるように柔軟性も備えています。あなたはボックスScalegrid.io encryption support外のソリューションを必要とする場合にMongoDBクラスタでこの機能を提供して作成ウィザード

免責事項:私はScalegrid.io

の創設者
+0

LUKSをMongoでテストしましたか? –

+0

はい。 LUKSはmongoとかなりよく働いています - それに特に関心がありましたか? – Dharshan

+0

私はさらにベンチャーをしようとする前に、これを行った人から十分な意見を得たいと思っていました。ありがとうございます –

関連する問題