Back to controls

Ensure Function App is using the latest version of TLS encryption

Azure Function Apps should reject legacy TLS protocols for inbound connections. TLS 1.0 and TLS 1.1 are legacy protocols with known weaknesses, and Microsoft recommends requiring TLS 1.2 or later for Azure App Service platform resources, including Azure Functions.

Category

Controls

Medium

Applies to

Microsoft Azure

Coverage

1 queries

Asset types

1 covered

Overview

Azure Function Apps should reject legacy TLS protocols for inbound connections. TLS 1.0 and TLS 1.1 are legacy protocols with known weaknesses, and Microsoft recommends requiring TLS 1.2 or later for Azure App Service platform resources, including Azure Functions.

This control helps ensure clients connect to the Function App and its SCM/Kudu management endpoint using modern transport security.

Remediation guidance

Remediation

Set the Function App minimum inbound TLS version to TLS 1.2 or later. Also update the SCM/Kudu minimum TLS version because deployment, log streaming, and advanced tooling use that endpoint separately.

Azure CLI

Check the current site and SCM minimum TLS settings:

az functionapp show \
  --resource-group {{asset.azureResourceGroup}} \
  --name {{asset.name}} \
  --query 'siteConfig.{siteTls:minTlsVersion,scmTls:scmMinTlsVersion}' \
  --output table

Set the main Function App endpoint to TLS 1.2 or later:

az functionapp config set \
  --resource-group {{asset.azureResourceGroup}} \
  --name {{asset.name}} \
  --min-tls-version 1.2

Set the SCM/Kudu endpoint to TLS 1.2 or later:

az resource update \
  --ids "{{asset.idFromProvider}}/config/web" \
  --set properties.scmMinTlsVersion=1.2

Rollout guidance

  1. Check recent traffic for TLS 1.0/1.1 clients before enforcing the change on critical public APIs.
  2. Coordinate client upgrades for legacy agents, embedded devices, older Java/.NET clients, and third-party webhook senders.
  3. Update deployment slots separately; each slot has independent TLS settings.
  4. Enforce the setting with Azure Policy after compatibility is confirmed.

References

  • https://learn.microsoft.com/en-us/azure/app-service/tls-minimum-version
  • https://learn.microsoft.com/en-us/azure/app-service/overview-tls

Query logic

These are the stored checks tied to this control.

Azure Function Apps allowing old TLS

Connectors

Microsoft Azure

Covered asset types

FunctionApp

Expected check: eq []

{
  functionApps(
    where: { configs_SOME: { NOT: { minTlsVersion_IN: ["1.2", "1.3"] } } }
  ) {
    ...AssetFragment
  }
}
Cyscale Logo
Cyscale is an agentless cloud-native application protection platform (CNAPP) that automates the contextual analysis of cloud misconfigurations, vulnerabilities, access, and data, to provide an accurate and actionable assessment of risk.

Stay connected

Receive new blog posts and product updates from Cyscale

By clicking Subscribe, I agree to Cyscale’s Privacy Policy


© 2026 Cyscale Limited

LinkedIn icon
Twitter icon
Facebook icon
crunch base icon
angel icon