専用Exadataインフラストラクチャ上のAutonomous Databaseのマスター暗号化キー
デフォルトでは、Autonomous Database on Dedicated Exadata Infrastructureによって、データの保護に使用されるすべてのマスター暗号化キーが作成および管理され、データベースが存在するのと同じExadataシステム上のセキュアなPKCS 12キーストアに格納されます。
会社のセキュリティ・ポリシーで必要な場合、Oracle Autonomous Database on Dedicated Exadata Infrastructureでは、Oracleキー・ストアを使用して作成および管理するキーをかわりに使用できます。Oracle Public Cloudデプロイメントの場合、Oracle Cloud Infrastructure Vaultサービスを使用してキーを作成および管理することもできます。
警告:
顧客管理キーはデータベース・ホスト外部にある個別のキー・ボールトに格納されるため、構成の変更や中断によってキーを使用するデータベースがキー・ボールトにアクセスできなくなると、そのデータベースのデータはアクセスできない状態になります。
さらに、Oracle管理キーまたは顧客管理キーのどちらを使用するかに関係なく、会社のセキュリティ・ポリシーを遵守するために、既存のデータベースで使用されるキーを必要に応じてローテーションできます。詳細は、暗号化キーのローテーションを参照してください。
Vaultサービスで顧客管理キーを使用する準備
Vaultサービスに格納された顧客管理キーを使用する前に、ボールトおよびマスター暗号化キーを作成する準備構成タスクをいくつか実行してから、そのボールトおよびそのキーをAutonomous Databaseで使用できるようにする必要があります。具体的には:
- Vaultサービスを使用して、少なくとも1つの有効なマスター暗号化キーを含むボールトを作成します。
- ネットワーキング・サービスを使用して、Autonomous Databaseリソースが存在するVCN (仮想クラウド・ネットワーク)およびサブネットにサービス・ゲートウェイ、ルート・ルールおよびエグレス・セキュリティ・ルールを追加します。
- IAMサービスを使用して、Autonomous Databaseリソースを識別する動的グループを作成し、作成したマスター暗号化キーへのアクセス権をその動的グループに付与するポリシー・ステートメントを作成します。
ヒント:
これらの手順を示す「試してみる」方法については、セキュリティ管理者専用のOracle Autonomous Databaseのラボ17: 顧客が制御するデータベース暗号化キーを参照してください。始める前に: コンパートメント階層のベスト・プラクティス
Oracleでは、次のように、専用インフラストラクチャにOracle Autonomous Database on Dedicated Exadata Infrastructureデプロイメントのコンパートメント階層を作成することをお薦めします:
- デプロイメント全体に対する「親」コンパートメント
- 各種リソースそれぞれに対する「子」コンパートメント:
- Autonomous Databases
- Autonomous Container Databaseおよびインフラストラクチャ・リソース(ExadataインフラストラクチャおよびAutonomous Exadata VMクラスタ)
- VCN (仮想クラウド・ネットワーク)およびそのサブネット
- 顧客管理キーを含むボールト
キーへのアクセス権をOracle Autonomous Database on Dedicated Exadata Infrastructureに付与するために作成するポリシー・ステートメントは、ボールトとそのキーを含むコンパートメントより上位のコンパートメント階層のポリシーに追加する必要があるため、顧客管理キーを使用する場合は、このベスト・プラクティスに従うことは特に重要です。
タスク1.ボールトおよびマスター暗号化キーの作成
Oracle Cloud Infrastructureドキュメントの新しいボールトを作成するにはの手順に従って、Vaultサービスでボールトを作成します。これらの手順に従う際には、始める前に: コンパートメント階層のベスト・プラクティスの説明に従って、顧客管理キーを含むボールトを含めるために作成したコンパートメント内にボールトを作成することをお薦めします。
ボールトの作成後、Oracle Cloud Infrastructureドキュメントの新しいマスター暗号化キーを作成するにはの手順に従って、ボールト内に少なくとも1つのマスター暗号化キーを作成します。これらの手順に従う際には、次の選択を行います:
- コンパートメントに作成: マスター暗号化キーを、そのボールトと同じコンパートメント(顧客管理キーを含むボールトを含めるために作成したコンパートメント)内に作成することをお薦めします。
- 保護モード: ドロップダウン・リストから適切な値を選択します:
- HSM: ハードウェア・セキュリティ・モジュール(HSM)で格納および処理されるマスター暗号化キーを作成します。
- ソフトウェア: Vaultサービスのソフトウェア・ファイル・システムに格納されるマスター暗号化キーを作成します。ソフトウェアで保護されたキーは、保存時にHSMベースのルート・キーを使用して保護されます。ソフトウェア・キーは、他のキー管理デバイスまたは別のOCIクラウド・リージョンにエクスポートできます。HSMキーとは異なり、ソフトウェアで保護されたキーはコストがかかりません。
- キー・シェイプ・アルゴリズム: AES
- キー・シェイプの長さ: 256ビット
Autonomous Container Databaseごとに個別のマスター暗号化キーを作成することをお薦めします。こうすることで、今後のキー・ローテーションの管理がはるかに簡単になります。
タスク2サービス・ゲートウェイ、ルート・ルールおよびエグレス・セキュリティ・ルールの作成
Oracle Cloud Infrastructureドキュメントのタスク1: サービス・ゲートウェイの作成の手順に従って、Autonomous Databaseリソースが存在するVCN (仮想クラウド・ネットワーク)内にサービス・ゲートウェイを作成します。
サービス・ゲートウェイを作成した後、ルート・ルールおよびエグレス・セキュリティ・ルールをAutonomous Databaseリソースが存在する(VCN内の)各サブネットに追加することで、これらのリソースがそのゲートウェイを使用してVaultサービスにアクセスできるようにします:
-
サブネットの「サブネットの詳細」ページに移動します。
-
「サブネット情報」タブで、サブネットの「ルート表」の名前をクリックして、その「ルート表の詳細」ページを表示します。
-
既存のルート・ルールの表で、次の特性を持つルールがすでに存在するかどうかを確認します:
- 宛先: Oracle Services NetworkのすべてのIADサービス
- ターゲット・タイプ: サービス・ゲートウェイ
- ターゲット: VCN内に作成したサービス・ゲートウェイの名前
そのようなルールが存在しない場合は、「ルート・ルールの追加」をクリックし、これらの特性を持つルート・ルールを追加します。
-
サブネットの「サブネットの詳細」ページに戻ります。
-
サブネットの「セキュリティ・リスト」表で、サブネットのセキュリティ・リストの名前をクリックして、その「セキュリティ・リストの詳細」ページを表示します。
-
サイド・メニューの「リソース」で、「エグレス・ルール」をクリックします。
-
既存のエグレス・ルールの表で、次の特性を持つルールがすでに存在するかどうかを確認します:
- ステートレス:: いいえ
- 宛先: Oracle Services NetworkのすべてのIADサービス
- IPプロトコル: TCP
- ソース・ポート範囲: すべて
- 宛先ポート範囲:443
そのようなルールが存在しない場合は、「エグレス・ルールの追加」をクリックし、これらの特性を持つエグレス・ルールを追加します。
タスク3動的グループおよびポリシー・ステートメントの作成
顧客管理キーにアクセスする権限をAutonomous Databaseリソースに付与するには、これらのリソースを識別するIAM動的グループを作成してから、Vaultサービスで作成したマスター暗号化キーへのアクセス権をこの動的グループに付与するIAMポリシーを作成します。
動的グループを定義する場合、Exadataインフラストラクチャ・リソースを含むコンパートメントのOCIDを指定することで、Autonomous Databaseリソースを識別します。
-
Exadataインフラストラクチャ・リソースを含むコンパートメントのOCIDをコピーします。このOCIDは、コンパートメントの「コンパートメントの詳細」ページで確認できます。
-
Oracle Cloud Infrastructureドキュメントの動的グループを作成するにはの手順に従って、動的グループを作成します。これらの手順に従う場合、次の形式の一致ルールを入力します:
ALL {resource.compartment.id ='<compartment-ocid>'}
ここで、
<compartment-ocid>
は、Autonomous Exadata VMクラスタ・リソースを含むコンパートメントのOCIDです。
allow dynamic-group <dynamic-group-name>
to manage keys
in compartment <vaults-and-keys-compartment>
where all {
target.key.id='<key_ocid>',
request.permission!='KEY_MOVE',
request.permission!='KEY_IMPORT'
}
allow dynamic-group <dynamic-group>
to read vaults
in tenancy | compartment <vaults-and-keys-compartment>
<dynamic-group>
は作成した動的グループの名前で、<vaults-and-keys-compartment>
はボールトおよびマスター暗号化キーを作成したコンパートメントの名前です。
Oracle Key Vault内の顧客管理キーを使用する準備
Oracle Key Vaultは、企業内のキーおよびセキュリティ・オブジェクトを一元管理するために構築された、フルスタックのセキュリティ強化型ソフトウェア・アプライアンスです。オンプレミスのOracle Key VaultデプロイメントをOracle Autonomous Database on Dedicated Exadata Infrastructureと統合して、独自のマスター・キーを作成および管理します。
Oracle Key Vaultに格納されている顧客管理キーを使用する前に、Oracle Key Vaultを使用するための準備の説明に従って、多数の準備構成タスクを実行する必要があります。
顧客管理キーの使用
Oracle Autonomous Database on Dedicated Exadata InfrastructureでOracleマネージド・キーのかわりに顧客マネージド・キーを使用できるようにするために必要な構成ステップを実行した後は、それを実際に使用する方法は非常に簡単です:
- Oracle管理キーではなく顧客管理キーを使用することを指定するAutonomous Container Databaseを作成します。
- そのAutonomous Container Database内にAutonomous Databaseを作成します。
作成したAutonomous Databaseでは、それが含まれるAutonomous Container Databaseが顧客管理キーを使用するように構成されているため、顧客管理キーが自動的に使用されます。したがって、Autonomous Databaseを作成および管理するユーザーは、顧客管理キーを使用するようにデータベースを構成することを心配する必要はありません。
顧客管理キーを使用するAutonomous Container Databaseを作成するには、Autonomous Container Databaseの作成を参照してください。