Pipeline: 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.
Run the pipeline
To run this pipeline from your terminal:
flowpipe pipeline run azure_cis.pipeline.cis_v300_4_7
Use this pipeline
To call this pipeline from your pipeline, use a step:
step "pipeline" "step_name" { pipeline = azure_cis.pipeline.cis_v300_4_7 }
Params
Name | Type | Required | Description | Default |
---|---|---|---|---|
database | connection.steampipe | Yes | Database connection string. | connection.steampipe.default |
notifier | notifier | Yes | The name of the notifier to use for sending notification messages. | notifier.default |
notification_level | string | Yes | The verbosity level of notification messages to send. Valid options are 'verbose', 'info', 'error'. | info |
approvers | list(notifier) | Yes | List of notifiers to be used for obtaining action/approval decisions. | notifier.default |
Outputs
This pipeline has no outputs.