Azure Redisで非SSL接続が許可されている

Azure Redisの非SSLポートを無効にし、クライアントがTLSで接続することを確認してください。

説明

Azure Redis CacheでenableNonSslPortがtrueの場合、暗号化されていないポートに接続できます。Redisはアプリケーションの状態やキャッシュデータを扱うため、プライベートネットワークでも通信を保護する必要があります。

想定される影響

  • 非SSL接続では、キャッシュデータや認証情報が平文で漏えいするおそれがあります。
  • 通信経路にアクセスできる攻撃者が、リクエストを傍受・改ざんする可能性があります。

対処方法

enableNonSslPortをfalseに設定してください。アプリケーションや管理ツールがTLS接続を使うよう接続文字列を確認し、最小TLSバージョンも組織のセキュリティ要件に合わせてください。

例

Azure Native v2の接続設定だけを示す抜粋です。リソースグループやSKUなど、他のキャッシュ設定は省略しています。

変更前

yaml
resources:
  redis:
    type: azure-native:cache:Redis
    properties:
      enableNonSslPort: true
      minimumTlsVersion: "1.2"

変更後

yaml
resources:
  redis:
    type: azure-native:cache:Redis
    properties:
      enableNonSslPort: false
      minimumTlsVersion: "1.2"

この変更は非SSLポートを無効にします。先にクライアントをTLSに切り替え、接続を確認してください。キャッシュの認証とネットワークのアクセス制限も別途必要です。

参考資料