Function App 최소 TLS 버전 점검

Function App의 실제 최소 TLS 버전과 클라이언트 호환성을 확인하세요.

설명

Function App의 최소 TLS 버전이 낮으면 오래된 암호화 연결이 허용될 수 있습니다. TLS 1.2 이상을 사용하고 클라이언트가 지원한다면 TLS 1.3을 고려하세요. 새 앱의 기본값은 TLS 1.2이므로 설정 생략만으로 약한 암호화를 사용한다고 판단할 수는 없습니다.

잠재적 영향

  • 구버전 TLS 연결을 허용할 수 있습니다.
  • 조직의 전송 암호화 기준을 충족하지 못할 수 있습니다.
  • 함수 엔드포인트와 SCM 엔드포인트의 보호 수준이 달라질 수 있습니다.

해결 방법

리소스 유형에 맞는 site_config.min_tls_version 또는 site_config.minimum_tls_version으로 승인된 최소 버전을 설정하세요. 현재 리소스의 SCM TLS 설정과 HTTPS 적용도 별도로 검토하세요. 변경 전 클라이언트 호환성을 확인하고 배포 후 허용·거부되는 연결을 테스트하세요.

예시

변경 전은 AzureRM 3.x의 기존 Function App, 변경 후는 현재 Linux Function App의 부분 예제입니다. 리소스 그룹과 스토리지 등 필수 설정은 생략했습니다. 두 리소스 유형 간 전환은 TLS 값 변경만으로 완료되지 않으므로 기존 상태와 앱 구성을 함께 검토하세요.

변경 전

hcl
resource "azurerm_function_app" "example" {
  name                = "test-azure-functions"
  location            = azurerm_resource_group.example.location
  app_service_plan_id = azurerm_app_service_plan.example.id

  site_config {
    dotnet_framework_version = "v4.0"
    scm_type                 = "LocalGit"
    min_tls_version          = "1.1"
  }
}

변경 후

hcl
resource "azurerm_linux_function_app" "example" {
  name            = "test-azure-functions"
  location        = azurerm_resource_group.example.location
  service_plan_id = azurerm_service_plan.example.id

  site_config {
    minimum_tls_version = "1.3"
  }
}

변경 전은 최소 TLS 버전 1.1을 사용합니다. 변경 후는 1.3을 요구하여 그보다 오래된 TLS 클라이언트를 허용하지 않습니다. 승인된 기준과 호환성을 확인한 뒤 적용하세요.

참조