Overview#

データベースで透過的データ暗号化TDEの使用を開始する場合は、新しいTDE対応データベースサーバーを作成するか、既存のデータベースサーバーをTDE対応環境に移行します。既存のインスタンスでTDEを有効にすることはできません。

データベースサーバーをスクラッチから作成するか、新しいインスタンスを作成して既存のデータベースサーバーを移行するかに関係なく、 initdb を使用してデータベースクラスターを初期化することにより、TDE対応データベースを作成する必要があります。

始める前に#

  • TDEによって生成された secure the data encryption key の方法を選択します。 Using a passphrase 、 Using a key store からのラッピングキーでそれらのキーを保護するか、テストのために Disabling the key wrapping を選択できます。

  • initdb TDE options を確認して、TDE対応データベースクラスターの初期化に必要なすべての情報を持っていることを確認します。

  • Limitations を確認して、TDEを有効にした場合のPostgreSQLユーティリティの処理の制限と変更を理解します。

  • 既存のデータベースサーバーからデータを移行する予定がある場合は、ソースデータベースサーバーのバックアップを必ず実行してください。

サーバーの初期化#

  1. Wrappingおよびunwrappingコマンドをエクスポートして、暗号化キーを保護します。計画段階で選択したラッピング方法を使用します。

または、コマンドライン引数でサーバーを初期化するときに、ラッピングおよびアンラップコマンドを提供できます。

例については、 TDEにラッピングおよびアンラップコマンドを提供する を参照してください。

  1. ターゲットディレクトリで--data-encryption を有効にしてデータベースサーバーを初期化します。必要に応じて、他の initdb TDE options を含めます。

  2. データベースクラスターと Verifying TDE is enabled を起動します。

詳細な初期化例については、 Tutorials を参照してください。

データの移行既存のインスタンスの場合#

既存のデータベースサーバーからデータとオブジェクトを移行する場合は、 pg_upgrade を使用して既存のインスタンスからデータをコピーします。

  1. ソースサーバーと新しいサーバーの両方を停止します。

  2. pg_upgrade と--copy-by-block オプションを使用して、ソースサーバーから新しいサーバーにデータをコピーします。必要に応じて、他の pg_upgrade TDE options を含めます。

  3. 新しい暗号化されたデータベースサーバーを起動します。

  4. 暗号化されたデータベースサーバーに接続し、データが転送されたことを確認します。

  5. 必要なクリーンアップ操作を実行します。

注釈

サポートされている有効化と移行のユースケースの概要については、 Upgrading a TDE-enabled database を参照してください。

詳細な移行例については、 Tutorials を参照してください。

チュートリアル#