Database Support Blog

  • Oracle Database
2021.11.30

今だから見直そうデータベースセキュリティ(前編)~DBセキュリティとはCIA(気密性、完全性、可用性)を正しく保つこと~

今だから見直そうデータベースセキュリティ(前編)~DBセキュリティとはCIA(気密性、完全性、可用性)を正しく保つこと~

最近のITシステムに関する大きなニュースと言えば、2022年4月1日より「改正個人情報保護法が完全施行されることになった」ことではないでしょうか。事故・事件発生時の詳細報告の義務化、詳細報告の期限が定められ、罰則が引き上げられるなど、これまでと比較して厳しい対応を迫られることになります。

もちろん、機密・非機密を問わず様々なデータが格納されているデータベースも例外ではありません。

本ブログでは、データベースを取り巻くセキュリティリスクとデータベースの機能で対応できることについて全2回にわたってご紹介します。

データベースセキュリティとは

データベースのセキュリティをどのように考えるべきでしょうか。データベースをどのようにして安全に利用することができるのでしょうか。この点を考えるにあたって、セキュリティの3要素であるCIAを理解することが近道になると考えています。

C:Confidentiality 機密性 しかるべきエンティティのみがデータにアクセスすることが可能な状態
I :Integrity 完全性 データが最新の状態でありかつ不整合がない状態
A:Availability 可用性 データをいつでも利用できる状態

この原則に則ると「データがどのように扱われることが、正しい状態であるか」の答えが見えてきます。
つまり、データベースをセキュアに保つということは「データがしかるべき人物によって(機密性)、正しい状態のデータ(完全性)をいつでも利用できる状態(可用性)」と言い換えることができ、データベースのセキュリティを考える際の基本原則となります。


5つの観点からデータベースセキュリティを考える

それでは、データベースをセキュアな状態に保つために、上記CIAの原則を踏まえたうえで具体的にどのように考えるべきでしょうか。ITシステムに求められるセキュリティの観点に照らし合わせて、データベースセキュリティを考えてみることで解説していこうと思います。観点は以下の5つです。

【ITセキュリティを考えるうえでの5つの観点】

観点 内容
1. データの保護 データの不正な改ざん、持ち出しやネットワークパケットの盗聴を防ぐために何をすべきか。
2. アイデンティティとアクセスの管理 しかるべき人物がデータベースに格納されたデータを利用できる状態を保つために何をすべきか。
3. 発見的統制の実現 仮にデータベースに対して不正なアクセスが発生する場合を想定して何をすべきか。
4. サーバの保護 データベースが稼働するサーバのセキュリティをどのように保つために何をすべきか。
5. インシデント対応 データの漏洩・破壊が発生した場合に何をすべきか。

これらの観点を元にデータベースのセキュリティを考えた場合、1、2、3については、データベースの機能で適切な対応が可能です。今回は「1. データの保護」について解説します。


データの保護(暗号化およびデータマスキング)

データは、通常、データベースへ平文で格納され、アプリケーションサーバとデータベースサーバ間の通信パケットも平文で送受信されます。このような状態は、しかるべき人物(暗号化鍵を持ち暗号化されたデータを復号できる)以外の人物によるデータの参照・改ざんを許すことになり、データ漏洩またはデータ改ざんのリスクが非常に高まります。

これらを防止するため、Oracle Databaseには「Oracle Advanced Security」と呼ばれる機能があります。Oracle Advanced Securityにより、Oracle Databaseのデータファイル、バックアップファイル、エクスポートダンプファイルなどをAES暗号アルゴリズムなどで暗号化・復号を実行し、データベースに格納されるデータをセキュアに扱うことができます。

さらに、Oracle Advanced Securityでは、Recovery Manager(RMAN)による物理バックアップファイルやOracle Data Pump Export機能を利用した論理バックアップも暗号化することができます。
 

【Oracle Advanced Securityによる格納データの暗号化】

Oracle Advanced Security 格納データの暗号化

また、アプリケーションサーバとデータベースサーバ間、データベースリンク間のネットワーク通信パケットが盗聴されることによってもデータ漏洩のリスクが非常に高まります。このようなリスクに対してもOracle Advanced Securityによる通信の暗号化(※)は非常に有効な機能と言えるでしょう。
 ※通信の暗号化機能はOracle Database 12cから標準機能として利用可能です。

【Oracle Advanced Securityによる格納データの暗号化】

Oracle Advanced Security 通信の暗号化

本番環境のデータベースに格納されたデータを開発環境でのアプリケーションテストで利用する場合も非常に注意が必要です。本番環境のデータベースに格納された機密データを開発環境に移動する場合、本番環境のデータベースに格納されたデータは、本番環境のデータベース管理者の管理下ではなくなります。

これによって、開発環境のデータベースにアクセス可能な人物によるデータの参照やデータの持ち出しが可能な状態を許す状態が生まれます。結果、データ漏洩につながる可能性が出てきます。

このような場合、「Oracle Data Masking and Subsetting Pack」機能が有効です。Oracle Data Masking and Subsetting Packは、本番環境のデータベースに格納されている機密データ(個人情報や医療情報、クレジットカード番号など)を固定値、ランダム値などに置き換える機能です。これによって、機密データの格納場所を本番環境に限定することができ、開発環境での機密データ漏洩を防ぐことができます。

開発業務をクラウド上で行っているユーザーにとっても、Oracle Data Masking and Subsetting Packは非常に有効な機能と言えます。

【Oracle Data Masking and Subsetting Pack機能】

Oracle Data Masking and Subsetting Pack


さいごに

データベースに格納されたデータを保護するための機能としてOracle Advanced Security、開発環境で利用するデータを安全に利用するためのOracle Data Masking and Subsetting Packの2つの機能をご紹介しました。データベースに格納されたデータを安全に取り扱うためにこれらの機能の利用を検討してはいかがでしょうか。

次回は、「2. アイデンティティとアクセスの管理」「3. 発見的統制の実現」について解説したいと思います。お楽しみに。


DBセキュリティウェビナーのご案内

企業の最重要な資産のひとつであるデータベースをクラウドに移行する際、セキュリティで押さえるべき基本とは?以下の観点で、クラウドならではのセキュリティ対策の活用法をお伝えします。

約20分間の本ウェビナーでサクッとポイントを確認してみませんか?
オンデマンドでいつでもご視聴いただけます!

・クラウドコンピューティングのサービスモデル(IaaS、PaaS、SaaS)の違いと責任分界点
・クラウド環境の堅牢性は何で示されるか
・クラウド環境ならではの脅威
・Oracle Cloudに備わるデータベースセキュリティ

データベースセキュリティの基本を理解したい方、これからOracle Databaseのクラウド化を検討される方など、セキュリティ対策を担当する方にオススメです。

講師:渡邊 敦(本記事の執筆者)



執筆者情報

わたなべ あつし プロフィール画像

ビジネスインフラ技術本部 データベース技術統括部

2017年入社。Oracle Databaseのプリセールス業務を担当。
あわせて、長年のOracle Databaseセキュリティ製品のフィールドエンジニア経験を活かして、データベースセキュリティ全般の提案/啓蒙活動も担当し、二足の草鞋で活躍中。


■本記事の内容について
 本記事に示した定義及び条件は変更される場合があります。あらかじめご了承ください。

■商標に関して
 ・Oracle®、Java、MySQL及びNetSuiteは、Oracle、その子会社及び関連会社の米国及びその他の国における登録商標です。
 ・Amazon Web Services、AWS、Powered by AWS ロゴ、[およびかかる資料で使用されるその他の AWS 商標] は、Amazon.com, Inc. またはその関連会社の商標です。
  文中の社名、商品名等は各社の商標または登録商標である場合があります。

関連している記事

  • Oracle Cloud
  • Oracle Database
2024.07.19

Oracle Cloud Shellで簡単にOCIのComputeへシリアルコンソール接続する方法!

Oracle Cloudで構築したComputeインスタンスは、ハードウェア等インフラ周りはオラクル社が管理しますが、OSやアプリケーションはお客様が管理する必要があります。今回は、事前準備不要で簡単に操作可能なCloud Shellによるコンソール接続をご紹介します。

  • Oracle Database
2024.07.16

Oracle Database 23ai新機能!DBセキュリティ対策に効果を発揮するSQLファイアウォール!

Oracle Database 23aiの新機能であるSQLファイアウォールはSQLインジェクションなど不正なSQLを検知/ブロックすることができます。

  • Oracle Database
  • Oracle Cloud
  • AWS
2024.07.09

Oracle Databaseライセンスの定義とルールを正しく理解する ~第4回:クラウド編~

今回はOracle Databaseライセンス「クラウド環境編」です。これまでエディション、ライセンスの種類、カウントの方法、という基本的な部分と、構成面の理解として仮想化環境の考え方をご紹介してきました。今回はクラウド環境におけるOracle Databaseライセンスの定義やルールを解説します。

ページの先頭へ戻る