Databases must not be publicly accessible
Critical
Cross-cloud
General
sql-no-public-access-2
Applies to
Microsoft.Sql/serversAWS::RDS::DBInstanceAWS::Redshift::Cluster
What CGPulse checks
A resource passes this rule when publicNetworkAccess must equal Disabled OR publiclyAccessible must equal false. Anything else is reported as a finding with the evaluated property value attached as evidence.
How to fix it
Disable public network access for databases and use private endpoints or VPC. See: https://learn.microsoft.com/en-us/azure/azure-sql/database/connectivity-settings#deny-public-network-access
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 Cross-cloud rules
- Block storage volumes must be encrypted
- Cache service security hardening
- Cache services must enforce TLS encryption in transit
- Container registry security hardening
- Database authentication must use managed identities
- IAM password policy must require minimum length of 14
- Key management service security hardening
- Kubernetes clusters must restrict public API access