DBデータのユーザー別暗号化
DBの特定データの暗号化について
前提環境
要求
複数の企業にサービス提供するが、企業同士でデータが見れないようにしてほしい
各企業ごとに暗号化鍵を持ち、万一データが混入してもデコードできないようにしたい
懸念
鍵の置き場所
アプリ設定に持つのはNG。企業が増えるたびに再デプロイが必要。
同じDBに置くのはNG。鍵と暗号化データを同じところに保管してはいけない
暗号化したデータはDB側で検索や集計が使えなくなる、INDEXが効かない
暗号化によってデータ量は増加する
ライブラリ
ざっくり調べるとDjangoで以下のライブラリがみつかった
Djangoプロジェクト単位でしか暗号化できなそうだ doc Djangoプロジェクト単位でしか暗号鍵を設定できない
参考
検索もできる(ただし完全一致)