MySQL Database Serviceにおけるデータセキュリティ機能紹介

 2021.10.25  株式会社システムエグゼ オラクルクラウドチーム

クラウド・データベース・サービス「MySQL Database Service」の登場によりOracle Cloud InfrastructureでMySQLを利用しやすくなりました。ですがまだクラウド・データベース・サービスのセキュリティに不安を感じる方もいるのではないでしょうか?
本稿ではMySQL Database Serviceのセキュリティ対策についてご紹介いたします。

クラウド・データベース・サービスのセキュリティは不安?

2020年9月に東京リージョンでも利用が開始された「MySQL Database Service(以下、MDS)」はOracle Cloud Infrastructure(以下、OCI)を基に開発され、MySQLの開発元であるオラクル社のMySQLチームが開発や管理、サポートを行うクラウド・データベース・サービスです。

これまでのOCIで利用できるデータベースと言えばOracle Autonomous Databaseが主流であり、MySQLを利用するためにはIaaS上に構成するなど少々複雑な方法を行う必要がありました。しかし、MDSが登場したことによって、これまでよりずっと簡単にOCI上でMySQLが利用できるようになりました。

これを機にオンプレミス環境で利用していたMySQLをOCIに移管してみてはいかがでしょうか!

……と言うのは簡単ですが、やはりこれまでオンプレミス環境で利用していたものを急にクラウド環境でというのは不安があるものです。

事実、総務省の調査によると、企業がクラウドサービスを導入しない理由の第2位は「情報漏洩などセキュリティに不安がある」であり、多くの方がクラウドサービスのセキュリティに不安を感じているようです。

通信利用動向調査
出典:総務省「通信利用動向調査

クラウドデータベースのセキュリティで不安となるのは、やはり大切なデータがしっかりと保護されるのかという点です。

一般的なクラウド・データベース・サービスの利用において、データが存在するのは下記の図のように

①クライアントとDBの通信接続時
②MDSでのデータ格納場所
③MDSのデータバックアップ保管場所

3ヵ所となります。

クラウド・データベース・サービス

つまり、この3ヵ所全てで適切なセキュリティ対応がされているということが安全性の証明になると言えます。
本稿では、MDSにおいて、上記3ヵ所で担保されるセキュリティ機能と安全性について紹介していきます。

相互接続を活用した基幹システムのマルチクラウド化事例
カタログ:MotionBoard × Autonomous Data Warehouse 次世代データ分析サービス

MySQL Database Serviceで保証されるデータセキュリティ

①クライアントとDBの通信接続時

クライアントとサーバ間で接続を行う際、MDSではトランスポート層セキュリティ(以下、TLS)を使用して暗号化されます。
このTLSによって、データの送受信時の通信が暗号化され、ネットワーク上の他の機器によるなりすましやデータの盗み見、改竄などを防ぐことができます。

このTLSはユーザ側での設定などは不要で、デフォルトで暗号化されます。

転送中暗号化: MySQL Database Serviceでは、トランスポセキュリティ(TLS)使用したクライアントとサー間暗号化された接続がサポトされます。
参照:「Oracle Cloud Infrastructure Documentation

②MDSでのデータ格納場所

MDSでは、データを格納するディスクとして「Oracle Cloud Infrastructure Block Volumes(以下、ブロックボリューム)」が採用されています。ブロックボリュームとはOCIのストレージサービスのことで、インスタンスと紐づけることでストレージを使用したり、ストレージ容量を拡張したりすることが可能となっています。

このブロックボリュームはオラクル提供の暗号化キーを使用してデフォルトで暗号化されています。また、明示的にボールト・サービスを使用して、ボリュームを自分が所有および管理するキーによって暗号化するように選択する事も可能です。

データを格納するブロックボリュームの年間耐久性は99.99%を提供するように設計されており、非常に高いレベルのデータ耐久性を提供しています。その上、ブロックボリュームは自動的にコピーが作成され、そのコピーは複数のストレージ・サーバ間で重複して保管されます。そのため、万が一、ブロックボリュームの破損が発生したとしても、データそのものの損失を未然に防ぐことができます。

このようにMDSのデータは暗号化された堅牢なブロックボリュームに格納されているため、高い耐久性と安全性を保持したままデータを運用する事が可能となっています。

③MDSのデータバックアップ保管場所

バックアップには物理バックアップと論理バックアップの2種類があります。それぞれのバックアップのセキュリティをご紹介していきます。

物理バックアップ

MDSで使用できる物理バックアップとして、「OCI提供の機能によるバックアップ」があります。

「OCI提供の機能によるバックアップ」では、バックアップファイルの出力先がブロックボリュームとなるため、AES256で自動的暗号化されます。ただし、このバックアップファイルはユーザが直接触ることはできず、OCI提供の機能によるリストア及びバックアップからの新規DBシステム作成でのみ使用可能となっています。

論理バックアップ

MDSで使用できる論理バックアップとして「mysqldump」「mysqlpump」「MySQL Shellのダンプ機能によるバックアップ」の3種類があります。こちらはMySQLでもともと使用することが可能なクライアントツールであり、MDSでも変わらず使用することができます。

自動で暗号化される物理バックアップに対して、論理バックアップはユーザが手動でバックアップファイルをopensslコマンドにて暗号化する必要があります。下記に手動による暗号化の例を記載します。

  • 暗号化
    openssl aes-256-cbc -e -in バックアップファイル名 -out 暗号化したファイルのファイル名
  • 復号化
    openssl aes-256-cbc -d -in 暗号化したファイルのファイル名 -out バックアップファイル名

最後に

今回は、通信中や保管中のデータセキュリティという観点でMDSのセキュリティ対策についてご紹介しました。

MDSは基本的には特別な設定を明示的に行わずとも、自動的に高度なセキュリティを担保してくれます。データベースにおけるセキュリティは非常に重要だからこそ、MDSでもしっかりとした対策を行っていることが伺えます。

これを期に、Oracleの新サービスである「MySQL Database Service」の導入をご検討されてはいかがでしょうか?


RECENT POST「OCI基礎知識」の最新記事


OCI基礎知識

Oracle Cloud at Customerとは?機能や導入メリットを解説!

OCI基礎知識

Oracle CloudのSLAとは?業界初のSLAを分かりやすく解説

OCI基礎知識

Oracle Cloud Guardとは?特徴や作成方法を徹底解説!

OCI基礎知識

Oracle Cloudのセキュリティ体制はなぜ強固なのか

MySQL Database Serviceにおけるデータセキュリティ機能紹介