App Service Slot should enforce HTTPS only
High
Azure
General
slots-app-service-slot-enforce
Applies to
Microsoft.Web/sites/slots
What CGPulse checks
A resource passes this rule when httpsOnly must equal true. Anything else is reported as a finding with the evaluated property value attached as evidence.
How to fix it
Enable HTTPS Only to encrypt all traffic and protect user data in transit. In Azure Portal: App Service > TLS/SSL settings > set 'HTTPS Only' to On. See: https://learn.microsoft.com/en-us/azure/app-service/configure-ssl-bindings#enforce-https
CLI
az webapp deployment slot update --ids "{id}" --set httpsOnly=trueBicep
// Slot is a child resource of Microsoft.Web/sites
resource webApp 'Microsoft.Web/sites@2023-12-01' existing = {{
name: '<parent-app-name>'
}}
resource slot 'Microsoft.Web/sites/slots@2023-12-01' = {{
parent: webApp
name: '{name}'
location: resourceGroup().location
properties: {{
httpsOnly: true
}}
}}Terraform
resource "azurerm_linux_web_app_slot" "{name}" {
name = "{name}"
app_service_id = "{id}"
https_only = true
site_config {}
}
Compliance frameworks
Is your environment compliant with this rule?
CGPulse checks it — and 621 others — against your Azure and AWS accounts with read-only access.
Related Azure rules
- Action Group should be enabled
- Activity Log Alert should be enabled
- AKS cluster logs should be sent to Log Analytics
- AKS cluster must enable RBAC
- AKS cluster must enable RBAC
- AKS cluster should be a private cluster
- AKS cluster should disable local accounts
- AKS cluster should enable Azure RBAC for Kubernetes