Control: 4.7 Ensure Default Network Access Rule for Storage Accounts is Set to Deny
Description
Restricting default network access helps to provide a new layer of security, since storage accounts accept connections from clients on any network. To limit access to selected networks, the default action must be changed.
Storage accounts should be configured to deny access to traffic from all networks (including internet traffic). Access can be granted to traffic from specific Azure Virtual networks, allowing a secure network boundary for specific applications to be built. Access can also be granted to public internet IP address ranges to enable connections from specific internet or on-premises clients. When network rules are configured, only applications from allowed networks can access a storage account. When calling from an allowed network, applications continue to require proper authorization (a valid access key or SAS token) to access the storage account.
Remediation
From Azure Portal
- Go to
Storage Accounts
. - For each storage account, under
Security + networking
, clickNetworking
. - Click the
Firewalls and virtual networks
heading. - Set
Public network access
toEnabled from selected virtual networks and IP addresses
. - Add rules to allow traffic from specific networks and IP addresses.
- Click
Save
.
From Azure CLI
Use the below command to update default-action
to Deny
.
az storage account update --name <StorageAccountName> --resource-group <resourceGroupName> --default-action Deny
Default Value
By default, Storage Accounts will accept connections from clients on any network.
Usage
Run the control in your terminal:
powerpipe control run azure_compliance.control.cis_v300_4_7
Snapshot and share results via Turbot Pipes:
powerpipe loginpowerpipe control run azure_compliance.control.cis_v300_4_7 --share
SQL
This control uses a named query:
storage_account_default_network_access_rule_denied