Azure SQL Database でセキュリティで保護されたエンクレーブを計画する

適用対象:Azure SQL Database

Azure SQL Database で、セキュリティで保護されたエンクレーブが設定された Always Encrypted には、Intel Software Guard Extensions (Intel SGX) エンクレーブまたは仮想化ベースのセキュリティ (VBS) エンクレーブを使用できます。

Intel SGX エンクレーブ

Intel SGX は、ハードウェアベースの高信頼実行環境テクノロジです。 仮想コア購入モデルDC シリーズ ハードウェア構成を使用しているデータベースとエラスティック プールで利用できます。 お使いのデータベースまたはエラスティック プールで Intel SGX エンクレーブを使用できるようにするには、データベースまたはエラスティック プールの作成時に DC シリーズ ハードウェア構成を選ぶか、DC シリーズのハードウェアを使うように既存のデータベースまたはエラスティック プールを更新する必要があります。

Note

Intel SGX は、DC シリーズ以外のハードウェアでは使用できません。 たとえば、Intel SGX は Standard シリーズ (Gen5) ハードウェア構成では使用できず、DTU モデルを使うデータベースでは使用できません。

Intel SGX エンクレーブを Microsoft Azure Attestation が提供する構成証明と組み合わせると、OS レベルの管理者アクセス権を持つアクターからの攻撃に対して、VBS エンクレーブよりも強力に保護できます。 ただし、お使いのデータベース用に DC シリーズのハードウェアを構成する前に、そのパフォーマンスのプロパティと制限事項を確認しておいてください。

  • DC シリーズは、仮想コア購入モデルの他のハードウェア構成とは異なり、論理コアではなく物理プロセッサ コアを使います。 DC シリーズ データベースのリソース制限は、Standard シリーズ (Gen 5) ハードウェア構成のリソース制限とは異なります。
  • DC シリーズのデータベースに設定できるプロセッサ コアの最大数は 40 です。
  • DC シリーズはサーバーレスでは機能しません。

また、DC シリーズの現在のリージョン別提供状況を確認し、希望するリージョンで使用できることを確認します。 詳細については、DC シリーズに関する記事を参照してください。

SGX エンクレーブは、最も強力なデータ機密保護が必要であり、DC シリーズの現在の制限に従うことができるワークロードにお勧めします。

VBS エンクレーブ

VBS エンクレーブ (仮想セキュア モード (VSM) エンクレーブとも呼ばれます) は Windows ハイパーバイザーに依存するソフトウェアベースのテクノロジであり、特別なハードウェアは必要ありません。 そのため、VBS エンクレーブは Azure SQL Elastic Pool を含むすべての Azure SQL Database オファリングで使用できます。これにより、ワークロードの要件に最適なコンピューティング サイズ、サービス レベル、購入モデル、ハードウェア構成、リージョンで、セキュリティで保護されたエンクレーブが設定された Always Encrypted を柔軟に使用できます。

注意

VBS エンクレーブは、JIO インド中部を除く、Azure SQL Database のすべてのリージョンで使用できます。

VBS エンクレーブは、データベース管理者 (DBA) を含め、お客様の組織内で高い特権を持つユーザーから、使用中のデータを保護したいお客様にお勧めするソリューションです。 データを保護する暗号キーを持っていない場合、DBA はプレーンテキスト内のデータにアクセスできません。

VBS エンクレーブは、データベースをホストする VM 内のメモリ ダンプから機密データが流出するなど、一部の OS レベルの脅威を防ぐのにも役立ちます。 エンクレーブ内のコードとそのプロパティが悪意を持って変更されていなければ、エンクレーブ内で処理されたプレーンテキスト データはメモリ ダンプに表示されません。 ただし、現在はエンクレーブの構成証明はないため、Azure SQL Database の VBS エンクレーブでは、エンクレーブのバイナリを悪意のあるコードに置き換えるなど、より高度な攻撃には対処できません。 また、構成証明に関係なく、VBS エンクレーブでは、特権システム アカウントを使ってホストから送信される攻撃からは保護できません。 Just-In-Time アクセス、多要素認証、セキュリティ監視など、Azure クラウドでこのような攻撃を検出して防ぐ複数層のセキュリティ コントロールを Microsoft が実装していることに注目してください。 ただし、強力なセキュリティ分離を必要とするお客様は、VBS エンクレーブよりも DC シリーズのハードウェア構成を使う Intel SGX エンクレーブを好む場合があります。

Azure SQL データベースでのエンクレーブの構成証明を計画する

DC シリーズ データベースで Intel SGX エンクレーブを使う場合、Microsoft Azure Attestation を使って構成証明を構成する必要があります。

重要

現在、VBS エンクレーブでは構成証明はサポートされていません。 このセクションの残りの部分は、DC シリーズ データベースの Intel SGX エンクレーブにのみ適用されます。

Azure SQL Database で Intel SGX エンクレーブの構成証明に Microsoft Azure Attestation を使用するには、構成証明プロバイダーを作成し、Microsoft 提供の構成証明ポリシーを使って構成する必要があります。 「Azure Attestation を使用して Always Encrypted の構成証明を構成する」をご覧ください

Intel SGX エンクレーブと構成証明を構成する場合のロールと責任

Azure SQL Database で Always Encrypted の Intel SGX エンクレーブと構成証明をサポートにするよう環境を構成するには、エンクレーブの構成証明をトリガーする構成証明プロバイダー、データベース、アプリケーションというさまざまなコンポーネントを設定する必要があります。 それぞれの種類のコンポーネントの構成は、以下の異なるロールのいずれかを引き受けるユーザーによって実行されます。

  • 構成証明管理者 - Microsoft Azure Attestation 内で構成証明プロバイダーを作成し、構成証明ポリシーを作成し、Azure SQL 論理サーバーに構成証明プロバイダーへのアクセスを付与し、ポリシーを指す構成証明 URL をアプリケーション管理者に共有します。
  • データベース管理者 (DBA) - DC シリーズのハードウェアを選ぶことでデータベースでの SGX エンクレーブを有効にし、構成証明プロバイダーにアクセスする必要がある Azure SQL 論理サーバーの ID を構成証明管理者に提供します。
  • アプリケーション管理者 - 構成証明管理者から取得した構成証明 URL でアプリケーションを構成します。

(実際の機密データを扱う) 運用環境では、構成証明を構成するときに組織がロールの分離に従うことが重要です。その場合、異なるユーザーがそれぞれ個別のロールを引き受けます。 特に、Always Encrypted を組織にデプロイする目的が、データベース管理者が機密データにアクセスできないようにすることにより攻撃対象領域を減らすことである場合、データベース管理者は構成証明ポリシーを制御できません。

次のステップ

関連項目