turbot/steampipe-mod-terraform-azure-compliance

Control: Public network access on Azure SQL Database should be disabled

Description

Disabling the public network access property improves security by ensuring your Azure SQL Database can only be accessed from a private endpoint. This configuration denies all logins that match IP or virtual network based firewall rules.

Usage

Run the control in your terminal:

powerpipe control run terraform_azure_compliance.control.sql_db_public_network_access_disabled

Snapshot and share results via Turbot Pipes:

powerpipe login
powerpipe control run terraform_azure_compliance.control.sql_db_public_network_access_disabled --share

SQL

This control uses a named query:

select
address as resource,
case
when (attributes_std -> 'public_network_access_enabled') is null then 'alarm'
when (attributes_std -> 'public_network_access_enabled')::boolean then 'alarm'
else 'ok'
end status,
split_part(address, '.', 2) || case
when (attributes_std -> 'public_network_access_enabled') is null then ' ''public_network_access_enabled'' not defined'
when (attributes_std -> 'public_network_access_enabled')::boolean then ' public network access enabled'
else ' public network access disabled'
end || '.' reason
, path || ':' || start_line
from
terraform_resource
where
type = 'azurerm_mssql_server';

Tags