セキュリティ対策の基礎となるデータ暗号化
今回は前回に続いて企業におけるデータベースの活用と安全な運用についてお届けします。第一回目では主にデータベース導入の課題についてまとめ、コスト面や運用管理といった問題をクリアしていくことが浮き彫りになりました。特に運用管理では「セキュリティ対策」を重視していくことが重要事項であるとお伝えしましたが、今回はデータベースを安全に運用していくためのポイントを整理しながらまとめていきたいと思います。
【前回を読む】
データベースを安全に運用していくためのポイント
データベースを安全に運用していくためのポイントとして、前回は簡単に次のような項目をあげました。
・機密情報の特定
・アクセス制御
・情報の暗号化
セキュリティ対策においては、この中のどれかひとつを行えば安全ということではなく、外部からの脅威、内部的なミスや犯罪を防ぐには、複合的に対策を取っていく必要があります。これらはもう少し具体的に見ると、「アカウント管理」「アクセス制御(認証)」「暗号化」「監査・監視」といった要素に分けられます。
アカウント管理
データベースの運用についてはまず、利用者ごとにアカウントを割りふるようにしましょう。システム管理部門において、データベース管理業務については管理職や実務担当などそれぞれの役割があります。もしも使用するアカウントを共有している場合は、「やっていい操作」と「やってはいけない操作」の区別がつかず不都合が生じてしまいます。またログを取得していても、操作者を特定するための判断材料となるべきアカウントがすべて同じでは、ミスや不正操作をしたアカウントを特定することができません。データベース管理者に対しては、管理者権限を付与した「データベース管理用アカウント」と、管理者権限がない「一般アカウント」に分けるようにしましょう。
アクセス制御(認証)
利用者ごとにアカウントを作成したら、次は適切な権限の付与を行います。「どの情報に誰がアクセスできるのか」をコントロールすることが必ず必要です。もしこれを怠れば個人の役割に沿った必要な権限のみを付与することができず、業務上必要のない権限まで所有することになります。
データベースに対するアクセス制御の形態には、適用する範囲に応じていくつかあり以下のように分類できます。
・アプリケーション側で実装する、データベースに対するアクセス制御
・データベース側で実装する、データベースに対するアクセス制御
・データベースに格納されている、表へのアクセス制御
これらのアクセス制御をしていくときにポイントとなるのが「機密情報の特定」になります。「このデータベースのどの表のどの列に守るべき重要な情報が入っているのか」といったより細かな精度で、重要な情報が入っている場所を把握しておくことが「機密情報の特定」になります。機密情報が入っているデータ(表)へアクセスできるアカウントを最小限にし、それ以外はセキュリティ対策を緩めるといったコントロールが可能になります。
暗号化
データベースの暗号化はHDD暗号化、DBデーブルの暗号化、DBカラムの暗号化、バックアップデータの暗号化といったものがあります。データベースの格納データや通信データは、デフォルトでは暗号化されていません。データベースファイルやバックアップメディアが盗難、紛失した場合、それらのメディアから情報が漏えいする可能性があります。データベースを暗号化する際は暗号鍵の管理を徹底する必要があります。暗号鍵が外部に漏えいすると、データを復号される危険があります。
データベースの暗号化については、データベースの処理速度や性能の低下を危惧する声も時に現場から上げられます。しかしデータベースに格納されているデータに対し、機密性を求められている部分のみを選択的に暗号化できれば、カラム単位の暗号化を実現し、暗号化前後のパフォーマンスの影響を最小限に抑えることができます。指定した特定の範囲を暗号化する「部分暗号化」が実現できれば、セキュリティとパフォーマンスの両立を実現可能にします。
監査・監視
上記で述べたセキュリティ対策は構成管理や予防的統制においてのものでした。監査・監視は発見的統制といった要素に対するセキュリティ対策になります。監査・監視とは、データベースに対して「いつ」「誰が」「どのデータを」「どのように操作したのか」という情報(アクセスログ)を取得、保全、分析する作業のことです。これにより、アクセス違反や不正な変更の検知の他、情報漏えいが発生した場合の発生経路や被害の範囲、影響度を調査することができます。
こうしたセキュリティを実現するのは相当の専門スキルが必要と思われますが、今はアプリケーションとしてパッケージ化された製品も出ています。データベースのセキュリティ対策については、運用管理のスキル不足や莫大なコストがかかるといった課題が危惧されていると第一回の記事でも紹介しましたが、必要な部分のみ、専門会社のソリューションをいれていくことで、こうした課題も解決していけるのではないでしょうか。
個人情報の暗号化はなぜ必要なのか
改正個人情報保護法での暗号化についての規定
「個人情報の保護に関する法律」は、平成29年5月30日に改正法が施行されました。これに伴い、個人情報保護法に関するガイドラインは、個人情報保護委員会が定めるガイドライン(「個人情報の保護に関する法律についてのガイドライン(通則編)」他3編)に、原則一元化されました。個人情報保護委員会は内閣府の外局として、特定個人情報の取扱いに関する監視・監督を行う独立機関です。当該ガイドラインによると、個人情報の漏えいを防ぐために「持ち運ぶ個人データの暗号化」「個人データを含む通信の経路又は内容を暗号化」するよう定められています。個人情報を含むようなデータについては原則暗号化することがガイドラインにも示されています。
さらに同委員会の定める「個人データの漏えい等の事案が発生した場合等の対応について」では、個人情報の漏えいが発生した場合、次のような措置を講じるよう義務付けています。
(1)事業者内部における報告及び被害の拡大防止
(2)事実関係の調査及び原因の究明
(3)影響範囲の特定
(4)再発防止策の検討及び実施
(5)影響を受ける可能性のある本人への連絡等
(6)事実関係及び再発防止策等の公表
引用:個人データの漏えい等の事案が発生した場合等の対応について
個人情報取扱事業者は、漏えい等事案が発覚した場合は、上記の対応に加え、その事実関係及び再発防止策等について、個人情報保護委員会等に対し速やかに報告するように努めることとされています。「改正個人情報保護法」(改正法)によると、5,000名以上の情報を有する“個人情報取扱事業者”が規制対象となり、違反した場合は、主務大臣による注意勧告や命令の対象となります。命令にも違反した場合には、罰則規定により6ヶ月以下の懲役または30万円以下の罰金に処せられることになります。
ただし実質的に個人データ又は加工方法等情報が外部に漏えいしていないと判断される場合は、報告を要しないとする規定もあります。この実質的には漏えいしていないとする基準の中に
漏えい等事案に係る個人データ又は加工方法等情報について高度な暗号化等の秘匿化がされている場合
とする一文が盛り込まれています。つまりたとえ情報が流出しても、適正な方法でデータが暗号化されていれば、外部漏えいとはみなされず、罰則の規定外になります。暗号化は、データにアクセスし、中を見られたとしても内容を推測されにくくする技術です。データベースのセキュリティ対策では暗号化だけ行うことが万全の対策にはなり得ませんが、少なくとも最低限実施しておくべき施策となります。
さいごに
企業にとっては個人情報の漏えいを引き起こすことは信用の失墜や巨額の賠償問題に加え、対応義務等怠れば法的にも罰則の課せられる恐れのある大きな問題です。こうした問題を起こしてしまい事後対応で費やす費用は、暗号化対策等、予防や防止に費やす費用とは比べ物になりません。何より一度失われた信用を取り戻すことは難しくなります。データベースの導入、運用管理については、しっかりとしたセキュリティ対策を念頭においておくようにしましょう。
データベース暗号化ソリューションに関する情報はこちら