OCI Object Storageにカスタム暗号化キーを設定してより安全に保護してみた

目次

はじめに

Oracle Cloud Infrastructure (OCI) ではデフォルトでデータは暗号化されていますが、
さらにセキュリティを強化するためにカスタム暗号化キーを使用することが可能です。
本記事では、OCI Object Storageを例に、
OCI Vaultを使用してカスタム暗号化キーを作成し適用する方法を紹介します。

データ暗号化の基本

サーバーサイド暗号化(SSE)とは?

サーバーサイド暗号化(SSE)は、クラウドプロバイダがユーザーのデータをクラウド上に保存する際に自動的に暗号化を行う仕組みです。
OCIでは、Object Storageに保存されるデータはデフォルトで暗号化されます。
暗号化には2つのタイプがあり、Oracleが管理するキーを使うか、ユーザーが自分で管理するカスタム暗号化キーを使うか選ぶことができます。

  • Oracle管理のキー(デフォルト): Oracleが提供する暗号化キーでデータを暗号化します。
  • カスタム暗号化キー(SSE-C): ユーザーがVaultで作成したカスタムキーを使ってデータを暗号化します。これにより、暗号化キーの管理やポリシーを自社でカスタマイズできます。

カスタム暗号化キーを利用することで、ユーザーは自身でキーの作成、ローテーションおよび廃棄を行うことができ、セキュリティポリシーに合わせた柔軟な管理が可能となります。

AES-256 暗号化

OCIで推奨されている暗号化アルゴリズムは、AES-256です。
これは256ビットのキーを使った非常に強力な暗号方式で、多くの企業や政府機関で採用されています。

AES-256の特徴:

  • 非常に高いセキュリティ: 256ビットのキーを使うため、現在の技術では解読が極めて困難です。
  • 迅速な処理: 強力な暗号化でありながら、データの暗号化と復号を高速に行うことができます。
  • 安全なデータ保護: ユーザーはこの暗号化方式を使うことで、OCI内のデータを安全に保つことができます。

Key Managementサービスとは

Key Managementサービスは、OCIが提供する暗号化キーの管理サービスです。
このサービスを使用するとデータの暗号化と復号に使用される鍵を作成・管理でき、データ保護の強化に役立ちます。
Key ManagementサービスはOCI Vaultと連携し、デフォルトの暗号化キーに加えてユーザーが独自にカスタムキーを作成することが可能です。

Key Managementサービスの主な機能:

  • キーのライフサイクル管理:キーの作成、ローテーション、削除を管理し、定期的なローテーションによってセキュリティリスクを低減。
  • 高セキュリティのHSM(ハードウェア・セキュリティ・モジュール):作成されたキーはHSMで保護され、物理的なセキュリティも確保。
  • 自動暗号化サポート:Block Volume、Object Storageなど、OCIの各種サービスに対して自動的に暗号化キーを適用してデータを保護。

OCI Vaultとは

OCI Vaultは暗号化キーやシークレットを安全に管理・保管するためのサービスです。
Vault内では暗号化キーが作成され、HSMで保護され、データの保護が強化されます。

カスタム暗号化キーとは

カスタム暗号化キーは、OCIのKey Managementサービスを使用してユーザーが独自に作成・管理する暗号化キーです。
デフォルトの暗号化キーと異なりカスタム暗号化キーを使うことで暗号化キーのライフサイクルを管理でき、より強固なデータ保護が可能となります。

前提条件

  • OCIアカウントを持っていること
  • OCI管理コンソールにアクセスできること

手順

OCI Vaultの作成(コンソール)

  1. コンソールにサインインし、左側のメニューから「アイデンティティ & セキュリティ」→「キー管理とシークレット管理」を選択します。
  2. 「Vault」に移動し、「Vaultの作成」をクリックします。
  3. 名前を設定し、コンパートメントを選び、作成します。

カスタム暗号化キーの作成

  1. 作成したVaultを開き、「キーの作成」をクリックします。
  2. 暗号化アルゴリズムはデフォルトの「AES256」を選択します。
  3. キーの表示名を入力し、「作成」をクリックします。

Object Storageにカスタム暗号化キーを適用

  1. コンソールで「ストレージ」 → 「オブジェクトストレージ」→「バケット」に移動し、目的のバケットを選択します。
  2. バケット詳細ページの「暗号化キー」の横にある「割り当て」をクリックします。
  3. ダイアログボックスで、Vaultのコンパートメント、Vault、およびキーを選択し、「割り当て」をクリックします。

    この手順により、バケット全体の暗号化にカスタム暗号化キーを使用することができます。
    これで、今後アップロードしたファイルはカスタム暗号化キーで暗号化されます。
    【補足】
    キーの割り当てを行う際もし下記のようなエラーがでたら権限不足でキーが扱えないため、ポリシーの追加が必要です。

    オブジェクトストレージのカスタム暗号化キー利用を許可するポリシー:

    各リージョンの識別子(region部分)については
    Oracle Cloud Infrastructureドキュメント:リージョンおよび可用性ドメイン
    に一覧で載っているのでご参照ください。
    今回は東京リージョンなのでap-tokyo-1を使用いたしました。大阪リージョンをご利用の場合はap-osaka-1となります。

キーのローテーション

カスタム暗号化キーを使用する際は
定期的なキーのローテーションを行うことで、セキュリティリスクをさらに軽減することができます。
OCIではVault内で簡単にキーのローテーションを設定することが可能です。

  1. コンソールにサインインし、左側のメニューから「アイデンティティ & セキュリティ」→「キー管理とシークレット管理」を選択します。
  2. 作成済みのVault内で、対象のカスタム暗号化キーを選びます。
  3. 「キーの詳細」ページで「キーのローテーション」オプションを選択し、キーをローテーションします。

まとめ

本記事では、Object StorageにOCI Vaultを利用してカスタム暗号化キーを作成し適用する手順を紹介しました。
カスタム暗号化キーを使うことでより強固なデータ保護が実現できます。

スマートスタイルTECHブログについて

スマートスタイルTECHブログでは、日頃OCIのサポート業務に従事している有資格者で構成された技術サポートチームがOCIに関する技術情報を発信しています。データベースのお困りごとはお気軽にご相談下さい。

よかったらシェアしてね!
  • URLをコピーしました!
目次