2016-05-29 12 views
3

This articleでは、MariaDBデータベーステーブルを暗号化するというテーマについて広範な議論が行われています。もう1つの優れたリソースはthis oneです。彼らが言及していない1つの点は、テーブルレベルの暗号化設定を定義する場所です。これを行うべきであると仮定して私は正しいと思いますか?MariaDB/MySQLテーブル暗号化

  • MariaDBサーバを再起動し、最終的に、
  • が、これは1が正しいがある場合であっても

を暗号化するために、テーブルのそれぞれにALTER TABLE ENCRYPTED=YES ENCRYPTION_KEY_ID=NN;を発行する暗号化キー

  • を作成/etc/mysql/my.cnfシステム
  • plugin-load-add=file_key_management_plugin.soここで心に浮かぶ質問 - 攻撃者が暗号化されたキーファイルに同時にアクセスすると、そのような暗号化がどのようにして妥協したデータを保護するのでしょうか?指定されたIPアドレスからのみアクセスできるように設定されたNFS共有フォルダに暗号化されたキーを格納することは可能な解決策ですか?

  • 答えて

    5

    This articleは、MariaDBでこれを設定する際のご質問のほとんどに答えてください。暗号化の設定に関連する答えは本質的に「あなたが正しい」ということですが、ログファイルの暗号化についても考慮する必要があります。

    後者の場合、アクセスが制限されたNFSボリュームを使用すると、データを盗むためにサーバーが物理的に取り外された場合でも、保護されているはずですが、あまり強固ではないようだ。サーバーにアクセスすることで、問題のNFSボリュームとファイルが簡単に利用可能になる可能性があります。 TPM(ハードウェアで許可されている場合)を使用すると、この種の問題を解決するのに役立ちます。

    ログインしているユーザーに暗号化キーをリンクするオプションはありますか?ユーザー認証に第2のデータベース(またはサーバー)を使用し、ユーザーのログインパスワードを使用して暗号化キーを暗号化してそこに保管することを検討してください。ログインが成功すると(正しいパスワードが提供されたとき)、暗号化キーを復号化し、最初の(暗号化された)データベースを "ロック解除"することができます。これにより、暗号化キーが「ユーザーの頭の中に」格納され、おそらく最も安全なオプションです。

    +0

    ありがとうございました!暗号鍵を「ユーザーの頭」に格納するというアイデアはきれいです! – DroidOS

    +1

    ただ気をつけて:ユーザーはパスワードを忘れることができます... – swa66