9.2 Ensure that 'Public Network Access' is set to 'Disable' (Automated)
Profile Applicability
- Level 2
Description
Disabling public network access restricts the service from accessing public networks.
Rationale
A secure network architecture requires carefully constructed network segmentation. Public network access is overly permissive and introduces unintended vectors for threat activity.
Impact
Disabling 'Public Network Access' forces the requirement of the use of Private Endpoints for network connectivity which will require some additional consideration from a network architecture perspective and will introduce cost based on the inbound/outbound data being processed by the Private Endpoint.
Audit Procedure
Audit from Azure Portal
- Go to
SQL servers. - For each SQL server, under
Security, clickNetworking. - Ensure that
Public network accessis set toDisable.
Audit from Azure CLI
List all SQL Servers and ensure publicNetworkAccess is not Enabled:
az sql server list --query "[].{name:name, resourceGroup:resourceGroup, publicNetworkAccess:publicNetworkAccess}"
Audit from PowerShell
List all SQL Servers and ensure PublicNetworkAccess is not Enabled:
Get-AzSqlServer | Select-Object -Property ServerName, ResourceGroupName, PublicNetworkAccess
Audit from Azure Policy
Policy ID: 1b8ca024-1d5c-4dec-8995-b1a932b41780
Name: 'Public network access on Azure SQL Database should be disabled'
Expected Result
Public network access should be set to Disable.
Remediation
Remediate from Azure Portal
- Go to
SQL servers. - For each SQL server, under
Security, clickNetworking. - Set
Public network accesstoDisable. - Click
Save.
Remediate from Azure CLI
For each SQL server with publicNetworkAccess Enabled, set it to Disabled:
az sql server update -n <sqlServerName> -g <resourceGroup> --set publicNetworkAccess="Disabled"
Remediate from PowerShell
For each SQL server with PublicNetworkAccess Enabled, set it to Disabled:
Set-AzSqlServer -ServerName <sqlServerName> -ResourceGroupName <resourceGroup> -PublicNetworkAccess "Disabled"
Default Value
By default, Azure SQL Server's public network access is set to Disable.
References
- https://learn.microsoft.com/en-us/security/benchmark/azure/security-controls-v3-network-security#ns-2-secure-cloud-services-with-network-controls
- https://learn.microsoft.com/en-us/azure/azure-sql/database/connectivity-settings?view=azuresql&tabs=azure-portal#deny-public-network-access
Profile
- Level 2