デプロイ計画 - 内部トラフィックの暗号化

内部トラフィック暗号化は、MQTT ブローカー フロントエンドとバックエンド ポッド間の通信を暗号化するセキュリティ機能です。 既定の内部トラフィック暗号化設定を変更する必要があるかどうかをデプロイ前に決定します。

Important

この設定では、Broker リソースを変更する必要があります。 この設定は、Azure CLI または Azure portal を使用して、初期デプロイ時にのみ構成されます。 Broker 構成の変更が必要な場合は、新しいデプロイが必要です。 詳細については、「既定のブローカーをカスタマイズする」を参照してください。

内部トラフィックの暗号化機能は、MQTT ブローカー フロントエンドとバックエンド ポッド間の転送で、内部トラフィックを暗号化するために使用されます。 Azure IoT Operations をデプロイすると、既定で有効になります。

暗号化を無効にするには、ブローカー リソースの advanced.encryptInternalTraffic 設定を変更します。 この手順は、--broker-config-file コマンドを使用した IoT Operations のデプロイ中に az iot ops create フラグを使用する場合にのみ実行できます。 詳細については、 高度な MQTT ブローカー構成に対する Azure CLI のサポートを参照してください

Caution

暗号化を無効にすると、MQTT ブローカーのパフォーマンスが向上します。 中間者攻撃などのセキュリティ上の脅威から保護するために、この設定を有効にしておくことを強くお勧めします。 テスト目的で制御された非運用環境でのみ暗号化を無効にします。

{
  "advanced": {
    "encryptInternalTraffic": "Disabled"
  }
}

その後、次のコマンドのように、az iot ops create フラグを指定して --broker-config-file コマンドを使用して IoT Operations をデプロイします。 (簡潔にするために、その他のパラメーターは省略されています。)

az iot ops create ... --broker-config-file <FILE>.json

内部証明書を構成する

暗号化が有効になっている場合、MQTT ブローカーは cert-manager を使用して、内部トラフィックの暗号化に使用される証明書を生成および管理します。 Cert-manager は、有効期限が切れると証明書を自動的に更新します。 証明書の有効期間、更新時期、秘密キーのアルゴリズムなどの設定は、Broker リソースで構成できます。 現在、証明書設定の変更は、--broker-config-file コマンドを使用して IoT Operations をデプロイするときに、az iot ops create フラグを使用する場合のみサポートされています。

たとえば、証明書 duration を 240 時間、renewBefore 時間を 45 分、privateKeyalgorithm を RSA 2048 に設定するには、JSON 形式で Broker 構成ファイルを準備します。

{
  "advanced": {
    "encryptInternalTraffic": "Enabled", 
    "internalCerts": {
      "duration": "240h",
      "renewBefore": "45m",
      "privateKey": {
        "algorithm": "Rsa2048",
        "rotationPolicy": "Always"
      }
    }
  }
}

次に、az iot ops create を使用して --broker-config-file <FILE>.json コマンドで IoT Operations をデプロイします。

次のステップ