説明
Redis のセッション、トークン、キャッシュデータは転送中も保護する必要があります。Azure Cache for Redis は TLS 1.0 と TLS 1.1 の接続を拒否し、AzureRM 5.6.0 の minimum_tls_version の既定値は 1.2 です。この属性を省略しただけで古い TLS が許可されるわけではありません。
想定される影響
- 古いプロトコルを使うクライアントは、現在のサービスに接続できない場合があります。
- 暗号化されていない接続やサーバー証明書の検証不足は、データや認証情報の漏えいリスクを高める場合があります。
対処方法
minimum_tls_version = "1.2" を明示し、非 TLS ポートを無効にしてください。アプリケーションが TLS 1.2 以降に対応していることを確認し、TLS 接続とサーバー証明書の検証を使用してください。
例
変更前の TLS 1.1 は、現在のサービスと AzureRM 5.6.0 ではサポートされていないため、デプロイに使用しないでください。変更後は対応する最小バージョンを明示する設定例です。
変更前
hcl
resource "azurerm_redis_cache" "example" {
name = "example-cache"
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
capacity = 2
family = "C"
sku_name = "Standard"
non_ssl_port_enabled = false
minimum_tls_version = "1.1"
}
変更後
hcl
resource "azurerm_redis_cache" "example" {
name = "example-cache"
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
capacity = 2
family = "C"
sku_name = "Standard"
non_ssl_port_enabled = false
minimum_tls_version = "1.2"
}
変更後は最小 TLS バージョンを 1.2 に指定します。現在の既定値も 1.2 なので、属性の省略がそのまま暗号化の低下を意味するわけではありません。