このトピックでは、透過的データ暗号化 (TDE) を設定する方法について説明します。
概要
TDEを使用して、データファイルをリアルタイムで暗号化および復号化できます。 TDEを使用して、データファイルがディスクに書き込まれるときにデータファイルを暗号化し、データファイルがディスクからメモリにロードされるときにデータファイルを復号化できます。 TDEを使用してデータファイルを暗号化または復号化する場合、データファイルのサイズは増加しません。 アプリケーションを変更することなく、TDEを使用できます。
暗号化キーは、キー管理サービス (KMS) によって生成および管理されます。 PolarDB-Xは、暗号化用のキーまたは証明書を提供しません。 PolarDB-Xは、Alibaba Cloudによって自動的に生成されるキーをサポートしています。 独自のキーマテリアルを使用して生成されたキーを使用するようにPolarDB-Xに権限を付与できます。
前提条件
KMS が有効化されていること。 KMSがアクティブ化されていない場合は、TDEを有効にしたときにアクティブ化できます。
手順
PolarDB for Xscaleコンソールにログインします。
上部のナビゲーションバーで、インスタンスがデプロイされているリージョンを選択します。
[インスタンスリスト] ページで、[PolarDB-X 2.0] タブをクリックします。
表示されるページで、インスタンスのIDをクリックします。
左側のナビゲーションウィンドウで、
を選択します。TDEタブで、TDEステータスの横にあるスイッチをオンにします。
[TDEの設定] ダイアログで、次の設定を実行します。
表示されるダイアログボックスで、[自動生成キーを使用] を選択し、[OK] をクリックします。
表示されるダイアログボックスで、[既存のカスタムキーを使用] を選択し、[OK] をクリックします。
説明カスタムキーがない場合は、[今すぐ作成] をクリックしてKMSコンソールに移動し、キーマテリアルをインポートします。 詳細については、「CMKの管理」をご参照ください。
テーブルを暗号化する
データベースにログインし、次のステートメントを実行してテーブルを暗号化します。
alter table <tablename> encryption='Y';
次の文を実行して、暗号化されたテーブルを作成します。
テーブル <tablename> <col definition> ENCRYPTION='Y';
テーブルを復号する
データベースにログインし、次のステートメントを実行して、TDEを使用して暗号化されたテーブルを復号化します。
alter table <tablename> ENCRYPTION='N';