App Service の HTTP/2 設定の確認

App Service の HTTP/2 の互換性と性能要件を確認し、HTTPS と TLS は別途管理してください。

説明

Azure App Service の siteConfig.http20Enabled は HTTP/2 の使用を制御します。HTTP/2 は一つの接続で複数の要求を効率よく処理でき、アプリケーションの性能と接続効率の向上に役立ちます。

HTTP/2 を使わないこと自体はセキュリティ上の脆弱性ではありません。HTTP/2 対応、HTTPS の強制、TLS バージョン、認証設定はそれぞれ確認する必要があります。

想定される影響

  • アプリケーションやクライアントの特性によっては、HTTP/2 の性能上の利点を活用できない場合があります。
  • サービスごとの設定が異なると、運用方針を一貫して管理しにくくなります。

対処方法

  • アプリケーションとクライアントの互換性を確認し、HTTP/2 が必要なら siteConfig.http20Enabled: true を設定してください。
  • カスタムプロキシやミドルウェアの制約を確認し、変更後の接続プロトコルと応答性能を確認してください。HTTPS と TLS の保護も別途維持してください。

例

App Service の一部のプロパティを示す抜粋です。デプロイに必要なサービスプランなどのアプリ設定は省略しています。どちらも httpsOnly: true を維持します。

変更前

bicep
resource webApp 'Microsoft.Web/sites@2020-12-01' = {
  name: 'example-webapp'
  location: resourceGroup().location
  properties: {
    httpsOnly: true
  }
}

HTTP/2 を明示していません。実際に適用された設定と使用プロトコルを確認してください。

変更後

bicep
resource webApp 'Microsoft.Web/sites@2020-12-01' = {
  name: 'example-webapp'
  location: resourceGroup().location
  properties: {
    httpsOnly: true
    siteConfig: {
      http20Enabled: true
    }
  }
}

HTTP/2 を明示的に有効にします。これだけで全クライアントの HTTP/2 使用や性能改善が保証されるわけではありません。

参考資料