※ 本記事は2016年12月8日に公開されたものです。
セキュリティを考える上で重要な事のひとつに「何を」守るのかということがあります。
データベースのセキュリティが重要な理由は、Oracle Databaseのライセンスは高かったし、壊されたら大変だからではありません。データベースの中に重要なデータが入っていて、そのデータが漏洩したり、壊されたりしたら大変だからです。
データベースの中に重要なデータが入っているといっても、データが全て等しく重要なわけではありません。データの中でも是が非でも守らなくてはいけないものから、それほど守らなくてもよいものまであるはずです。たとえばショッピングサイトの裏側のデータベースを考えた場合、顧客の個人情報やクレジットカード情報は厳格に守らなくてはいけない情報ですし、商品ページに乗せるカタログ情報は書き換えられないような対策は必要ですが、公開情報なので漏洩に関しては気にする必要はありません。
それではどのような情報を守らなくてはいけないのでしょうか?
つぎに会社の業務継続に関わる情報があります。部品表などの製品の設計に関わる情報など他社との競争に欠かせない営業秘密情報は、会社の規定で定義されていなくても保護する必要があります。営業秘密が不正に持ち出されてしまった場合、不正競争防止法に則って刑事・民事で訴えることができますが、訴えるためには持ち出された情報が影響秘密として適切に「秘密管理措置」がとられていたことが必要になります。経済産業省からも「営業秘密 ~営業秘密を守り活用する~」と注意喚起がされています。
さて、守るべきデータが見えてきたところで、次にそのデータの重要度を見極めるべきです。すべてのデータを一律に厳しく同じ対策で守ろうとすると、対策コストが膨れあがってしまいます。法律の罰則規定や法定監査があるものは、その基準を満たすための対策を必ず取らなくてはなりませんが、営業秘密の中にはそれほど重要でないものもあります。会社の情報管理規定でそれぞれの情報の重要性を「極秘」「秘」「社外秘」「区分なし(公開可)」のように機密レベルで定義していることもあるかもしれません。
それぞれの情報を機密レベルに分類し、機密レベル応じたセキュリティ対策をとることで、対策にかかるコストを適正化できます。機密レベルに応じたセキュリティ対策に関してはまた別のエントリで紹介したいと考えています。
保護すべき対象が整理できたら、次が今回のエントリの本題の「守るべきデータはどこにあるか」です。
データベースに格納されている、だけでしょうか?その他の場所にもさまざまな場所に守るべきデータは散らばりがちです。
まずはバックアップ。バックアップは復旧のためにほとんどのシステムで取得していると思います。当たり前ですがバックアップには本番データベースと同じデータが格納されています。バックアップを開発環境でリストアされて情報が漏洩した事件も起きています。データベースのバックアップもきちんとセキュリティ対策をおこなう必要があります。
バックアップに関して言えば、物理的なデータベースのバックアップだけではなく、論理的なデータのバックアップを取得しているシステムもあると思います。データをCSVなどファイルに出力して他のシステムにもリストアしやすい形でバックアップする方式です。
CSVなどファイルへの書き出しという点では、他システムとの連携でも中間ファイル経由の連携をしているケースもあると思います。
書き出されたCSVファイルはExcel形式となり、パソコンで保存している人もいるかもしれません。
- データベースのバックアップは暗号化して保存する。
- 外部との連携は中間ファイルを介さずに直接データ連携をおこなう仕組みを利用する。
- どうしても中間ファイルを利用しなくてはならないケースでは、中間ファイルは暗号化し、連携後即座に必ず削除する。
- パソコンで利用する重要なデータが入ったファイルはIRM製品で管理する。
- パソコンに保存するデータは件数が少ないのでセキュリティのリスクを受け入れる。
- 情報漏洩用の保険をかける。
データベースを提供している立場の人間がいうのもなんですが、重要なデータはほぼデータベースの中に格納される近年のシステム構成では、守るべきデータはデータベースで安全に集中管理し、データベースの外に持ち出されて保存される機会を最小限にする(たとえば、中間ファイルを作成しない)ことで、守らなくていけない場所を減らすことが��セキュリティのコスト削減につながると考えます。
