市場ニーズ
Fortanix Data Security Manager は、Oracle Transparent Data Encryption (TDE) や MySQL の Data-at-Rest Encryption と容易に統合できる、HSM と鍵管理を統合したソリューションです。Oracle と Fortanix Data Security Manager の共同ソリューションは、データセンターおよびクラウド環境において、スケーラブルなデータ保護とコンプライアンスを提供します。
ソリューションの概要
本記事では、Fortanix Data Security Manager を Oracle TDE で使用するための統合方法について説明します。Oracle データベースの Transparent Data Encryption (TDE) は、テーブル内の機密データを保存媒体に書き込む際に暗号化して保護します。データへのアクセス時には、認可されたユーザーやアプリケーションに対して透過的に復号されます。詳しくは「Transparent Data Encryption の概要」をご参照ください。
注: Fortanix Data Security Manager は Oracle バージョン 11、12.1、12.2 に対応しています。以下の手順は、CentOS 7.2 上で稼働する Oracle Database 12c Release 2 で検証済みです。

構成
ビデオデモもあわせてご参照ください: https://www.youtube.com/watch?v=eMpc2yozFTQ
開始前に、Fortanix Data Security Manager の PKCS#11 ライブラリをこちらからダウンロードしてください。以下の手順は、CentOS 7.2 上で稼働する Oracle Database 12c Release 2 で検証済みです。
sqlnet.ora に次の行を追加します:
ENCRYPTION_WALLET_LOCATION = (SOURCE = (METHOD=HSM))
Fortanix Data Security Manager の PKCS#11 ライブラリを /opt/oracle/extapi/64/hsm/fortanix/0.8.0 フォルダにコピーします。ライブラリファイル名は libpkcs11.so に変更してください。
Fortanix Data Security Manager の PKCS#11 ライブラリを含むフォルダのパーミッションと所有権を設定します
[oracle@localhost ~]$ sudo chown -R oracle:oinstall /opt/oracle
[oracle@localhost ~]$ sudo chmod -R 775 /opt/oracle
Oracle TDE 用に Fortanix Data Security Manager にアプリケーションを追加します。手順は「Getting Started」を参照してください。アプリケーションの API キーをコピーし、API エンドポイントとともにファイルへ書き込みます。このファイルは PKCS#11 ライブラリのログ出力先ファイルの場所指定にも使用できます。このファイルの絶対パスを控えておいてください。後で必要になります。例として、ファイル dsm_app_api_key は次の内容になります。
api_endpoint = “https://dsm.fortanix.com”
api_key = “MWY5YT...TO5n”
[log]
file = “”
sqlplus を起動し、sys ユーザーで sysdba ロールにてログインします
[oracle@localhost ~]$ sqlplus
SQL\*Plus: Release 12.2.0.1.0 Production on Fri Dec 1 00:47:19 2017
Copyright (c) 1982, 2016, Oracle. All rights reserved.
SQL> connect
Enter user-name: sys as sysdba
Enter password:
Connected.
ルート・コンテナに切り替えます。キーストアはまずルート・コンテナで開く必要があります。sqlplus で次のコマンドを実行します:
SQL> ALTER SESSION SET CONTAINER = CDB$ROOT;
ハードウェア・キーストアを開くために、次のコマンドを実行します
SQL> ADMINISTER KEY MANAGEMENT SET KEYSTORE OPEN IDENTIFIED BY “file:///home/oracle/dsm_app_api_key” CONTAINER = ALL;
ハードウェア・キーストアを開いた後、次のコマンドを実行して TDE マスター暗号化キーを設定します。
SQL> ADMINISTER KEY MANAGEMENT SET KEY IDENTIFIED BY “file:///home/oracle/dsm_app_api_key” CONTAINER = ALL;
テーブルの列または表領域で暗号化を有効にするため、sys 管理者以外のユーザーで sql に接続します。
[oracle@localhost ~]$ sqlplus
SQL\*Plus: Release 12.2.0.1.0 Production on Fri Dec 1 01:08:32 2017
Copyright (c) 1982, 2016, Oracle. All rights reserved.
Enter user-name: user
Enter password:
Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
暗号化された列を持つテーブルを作成します。
SQL> CREATE TABLE employee (first_name VARCHAR2(128),last_name VARCHAR2(128),empID NUMBER,salary NUMBER(6) ENCRYPT);
テーブルにいくつかデータを挿入します
SQL> INSERT INTO employee VALUES (‘JOHN’, ‘SMITH’,001, 10000);
この時点で、Fortanix Data Security Manager の Web UI でマスターキーの監査ログを確認し、マスターキーが使用されたことを確認します。
データベース内の暗号化列を一覧表示するには、次のコマンドを実行します:
SQL> select * from dba_encrypted_columns;
Fortanix Data Security Manager
Intel® SGX によって保護された Fortanix Data Security Manager は、ソフトウェア定義のシンプルさで HSM 級のセキュリティを提供します。Fortanix Data Security Manager は、堅牢なアプライアンス、HSM as a Service、汎用 x86 サーバー上で動作するソフトウェアなど、柔軟な利用形態を提供します。
Fortanix Data Security Manager は、集中管理、改ざん防止のログ、豊富なアクセス制御、REST API、そして大規模スケーラビリティを提供します。組織は Fortanix Data Security Manager を用いて、デジタル決済、PKI システム、IoT アプリケーション、半導体製造、リモート TLS 終端などのクラウドおよび従来型アプリケーションの機密性を保護し、統合の複雑さとコストを大幅に削減しています。
Oracle Transparent Data Encryption (TDE)
Oracle TDE および MySQL TDE は、データベースで保存データの暗号化を有効化することで重要なデータを保護します。情報のプライバシーと機密性を守り、データ侵害を防止し、法規制コンプライアンス要件の達成を支援します。ネイティブ暗号化を使用する場合、リスクは通常キー管理システムへ移転されます。



