Azure Event Hubsコンフィデンシャル コンピューティングの概要

Azure Event Hubs Dedicated ではコンフィデンシャル コンピューティングがサポートされ、使用中のイベント データが保護されます。 コンフィデンシャル コンピューティングでは、ハードウェア ベースの信頼された実行環境 (TE) を使用して強化されたデータ保護を提供し、処理中にイベントへの不正アクセスを防ぎます。

Event Hubs Dedicated 名前空間でコンフィデンシャル コンピューティングを有効にすると、保存時および転送中の既存の暗号化に加えて、ハードウェア レベルの分離によってデータがメリットを得られます。 この機能は、機密データまたは規制対象データを処理する組織が厳密なセキュリティとコンプライアンスの要件を満たすのに役立ちます。

Benefits

Azure Event Hubsのコンフィデンシャル コンピューティングには、次の利点があります。

  • コードの変更は必要ありません:アプリケーションやイベント処理パターンを変更することなく、名前空間レベルでコンフィデンシャル コンピューティングを有効にします。
  • 多層防御: カスタマー マネージド キー、 プライベート エンドポイント、 マネージド ID などの既存の Event Hubs セキュリティ機能と組み合わせます。
  • イベント ストリーミング保護: イベント ハブは、イベント処理中にハードウェア レベルの分離を利用できます。

リージョン別の提供状況

Azure Event Hubsのコンフィデンシャル コンピューティングは、一部のリージョンで利用できます。

リージョン
韓国中部
アラブ首長国連邦北部

制限事項

Azure Event Hubsのコンフィデンシャル コンピューティングには、次の制限事項が適用されます。

  • コンフィデンシャル コンピューティングは、 専用レベルでのみ使用できます。
  • 名前空間の作成時にコンフィデンシャル コンピューティングを有効にする必要があります。 既存の名前空間では有効にできません。

Azure portal を使用してコンフィデンシャル コンピューティングを有効にする

  1. Azure ポータルに移動し、Event Hubs 名前空間の作成ページを開きます。

  2. 価格レベルで [ 専用 ] を選択します。

  3. サポートされているリージョンを場所として選択します。

  4. Confidential コンピューティングの場合は、[有効] を選択します。

    [社外秘コンピューティング] トグルが有効になっている [名前空間の作成] ページを示すスクリーンショット。

  5. 名前空間構成の残りの必須フィールドを入力します。

  6. [ 確認と作成] を選択し、[ 作成 ] を選択して、コンフィデンシャル コンピューティングを有効にして名前空間をデプロイします。

テンプレートを使用してコンフィデンシャル コンピューティングを有効にする

platformCapabilities プロパティをデプロイ テンプレートに含めることで、プログラムでコンフィデンシャル コンピューティングを有効にすることができます。

手順 1: コンフィデンシャル コンピューティングを使用して専用クラスターを作成する

次のBicep ファイルでは、コンフィデンシャル コンピューティングが有効になっている Event Hubs Dedicated クラスターが作成されます。

@description('Name of the Event Hubs Dedicated cluster')
param clusterName string

@description('Location for the cluster. Must be a region that supports confidential computing.')
@allowed([
  'koreacentral'
  'uaenorth'
])
param location string = 'uaenorth'

@description('Capacity units for the Dedicated cluster')
@minValue(1)
param capacity int = 1

resource eventHubCluster 'Microsoft.EventHub/clusters@2025-05-01-preview' = {
  name: clusterName
  location: location
  sku: {
    name: 'Dedicated'
    capacity: capacity
  }
  properties: {
    supportsScaling: true
    platformCapabilities: {
      confidentialCompute: {
        mode: 'Enabled'
      }
    }
  }
}

output clusterArmId string = eventHubCluster.id

手順 2: 専用クラスターに名前空間を作成する

クラスターが作成されたら、クラスターのリソース ID を参照して、その中に Event Hubs 名前空間を作成します。

@description('Name of the Event Hubs namespace')
param namespaceName string

@description('Location for the namespace. Must match the cluster location.')
param location string

@description('Resource ID of the Dedicated cluster')
param clusterArmId string

resource eventHubNamespace 'Microsoft.EventHub/namespaces@2025-05-01-preview' = {
  name: namespaceName
  location: location
  sku: {
    name: 'Standard'
    tier: 'Standard'
    capacity: 1
  }
  properties: {
    clusterArmId: clusterArmId
  }
}

コンフィデンシャル コンピューティングとカスタマー マネージド キーを組み合わせる

データ保護を最大限に活用するには、コンフィデンシャル コンピューティングと、Azure Key Vault Managed HSM によってサポートされるカスタマー マネージド キーを組み合わせます。 この組み合わせにより、次のことが保証されます。

  • データは、コンフィデンシャル コンピューティングによって使用中に保護されます。
  • 暗号化キーは、検証済みのハードウェア セキュリティ モジュールに格納されます。
  • 暗号化キーを完全に制御できます。

Azure Policy を使用してコンフィデンシャル コンピューティングを適用する

Azure Policy定義を作成して、組織内のすべての Event Hubs Dedicated クラスターでコンフィデンシャル コンピューティングが有効になっていることを強制します。 この方法により、Azure 環境全体で一貫したセキュリティ構成が保証されます。

次のポリシー定義は、コンフィデンシャル コンピューティングが有効になっていない専用クラスターの作成を拒否または監査します。

{
    "mode": "All",
    "parameters": {
        "effect": {
            "type": "String",
            "metadata": {
                "displayName": "Effect",
                "description": "Deny or Audit"
            },
            "allowedValues": [
                "Deny",
                "Audit"
            ],
            "defaultValue": "Deny"
        }
    },
    "policyRule": {
        "if": {
            "allOf": [
                {
                    "field": "type",
                    "equals": "Microsoft.EventHub/clusters"
                },
                {
                    "not": {
                        "field": "Microsoft.EventHub/clusters/platformCapabilities.confidentialCompute.mode",
                        "equals": "Enabled"
                    }
                }
            ]
        },
        "then": {
            "effect": "[parameters('effect')]"
        }
    }
}

このポリシーを使用するには、Azure Policy でカスタム ポリシー定義を作成し、管理グループ、サブスクリプション、リソース グループなどの適切なスコープに割り当てます。

Note

コンフィデンシャル コンピューティングとカスタマー マネージド キーを組み合わせる場合は、ユーザー割り当てマネージド ID を使用します。 この要件は、名前空間を作成する前に、マネージド HSM へのアクセス権を ID に付与する必要があるためです。 システム割り当て ID は、名前空間の作成後にのみ存在します。