turbot/azure_compliance

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

  1. Go to Storage Accounts.
  2. For each storage account where a shared access signature is required, under Security + networking, go to Shared access signature.
  3. Select the appropriate Allowed resource types.
  4. Set the Start and expiry date/time to be within one hour.
  5. 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 login
powerpipe control run azure_compliance.control.cis_v300_4_5 --share

SQL

This control uses a named query:

manual_control

Tags