IoTやAI、DXというキーワードを目にしない日はありません。デジタル技術を駆使した現代の社会ではセキュリティーの重要性が以前より増加しています。また、一般的には知られていませんが、データベースのセキュリティーも重要になっています。
データベースのセキュリティーをどのように強化するのか、さまざまな角度から見てみましょう。
データベースを暗号化すべき理由
データベースは通常、アプリケーションを通して情報を保管したり読み出したりするもので、情報の保管場所のことをストレージといいます。つまり、データはアプリケーション・データベース・ストレージの三層構造を通して保管されるようになっています。
かつてはネットワークからデータを直接扱うアプリケーションの脆弱性を狙う攻撃や、OSまたはサーバー本体を狙ったものがセキュリティー攻撃の主流でしたが、近年ではデータベースそのものを狙うケースも増えています。
フォレスター・リサーチ社の報告によると、データベースにセキュリティー対策を施しているサービスはたったの2割程度であると見積もられています。現在では以前よりも個人情報の取り扱いの重要性が、社会的にも厳しく認識されています。そのため、データベースの観点からも何らかのセキュリティー対策を講じなければなりません。
データベースのセキュリティー対策ではさまざまな施策がとられますが、ベースとなる対策の第一に挙げられるのが「暗号化」ではないでしょうか。
データベース活用でできること
データベースの暗号化による活用方法は3つのケースに大別され、アプリケーション・データベース・ストレージの各層での暗号化と復号化がなされます。
アプリケーションを暗号化するケース
アプリケーションはユーザーと直接にデータをやり取りするフロントで、データベースとの間で情報を渡したり受け取ったりしています。アプリケーション側で事前に暗号化してデータベースへ情報を渡した場合は、データベース側に格納された時点ですでに情報は暗号化されています。復号化するにはアプリケーションを利用しなければならないため、データベース単独へのハッキングでは情報漏洩をブロックできます。
ストレージを暗号化するケース
オペレーティングシステムやストレージの暗号化機能を活用する方法です。セキュリティー攻撃ではデータベースだけでなく、OSの脆弱な部分を狙うケースも多いため、ストレージを含めたサーバー全体を俯瞰した対策が必要です。
データベースそのものを暗号化するケース
近年の主なデータベースでは、透過的な暗号化機能を有しているものがほとんどです。この機能を使うことで、たとえプレーンなデータであっても、データベース側で自動に暗号化されます。読み出しした際には自動的に復号化されるので、利用する側は特に意識することなく暗号化の恩恵を受けられます。
まとめ
今回はデータベースを中心した暗号化・復号化を、3つのケースに分けて解説してきました。あくまで概略になので、運用時にはさらに詳細を確認することが必要です。また、3つのケースではそれぞれにメリット・デメリットがあるため、1つの対策だけでは不十分なこともあります。
IoTやスマホ、ウェアラブル端末の普及などで、身近なところでもデータベースのセキュリティー対策が重要になっています。ベンダーや自社でサービスを行っている企業はもとより、社内でデータベースを活用している場合は、あらためてセキュリティーの重要性を認識しなくてはいけません。
ソフトエイジェンシー製品URL
https://www.softagency.co.jp/products/server-general