Control: 4.5 Ensure that Shared Access Signature Tokens Expire Within an Hour
Description
Expire shared access signature tokens within an hour.
A shared access signature (SAS) is a URI that grants restricted access rights to Azure Storage resources. A shared access signature can be provided to clients who should not be trusted with the storage account key but for whom it may be necessary to delegate access to certain storage account resources. Providing a shared access signature URI to these clients allows them access to a resource for a specified period of time. This time should be set as low as possible and preferably no longer than an hour.
Remediation
When generating shared access signature tokens, use start and end time such that it falls within an hour.
From Azure Portal
- Go to Storage Accounts.
- For each storage account where a shared access signature is required, under
Security + networking
, go toShared access signature
. - Select the appropriate
Allowed resource types
. - Set the
Start and expiry date/time
to be within one hour. - Click
Generate SAS and connection string
.
Default Value
By default, expiration for shared access signature is set to 8 hours.
Usage
Run the control in your terminal:
powerpipe control run azure_compliance.control.cis_v300_4_5
Snapshot and share results via Turbot Pipes:
powerpipe loginpowerpipe control run azure_compliance.control.cis_v300_4_5 --share
SQL
This control uses a named query:
manual_control