S3 Data should be versioned

Explanation

Versioning in Amazon S3 is a means of keeping multiple variants of an object in the same bucket. You can use the S3 Versioning feature to preserve, retrieve, and restore every version of every object stored in your buckets. With versioning you can recover more easily from both unintended user actions and application failures.

Possible Impact

Deleted or modified data would not be recoverable

Suggested Resolution

Enable versioning to protect against accidental/malicious removal or modification

Insecure Example

The following example will fail the AVD-AWS-0090 check.

---
Resources:
  BadExample:
    Type: AWS::S3::Bucket

Secure Example

The following example will pass the AVD-AWS-0090 check.

---
Resources:
  GoodExample:
    Properties:
      VersioningConfiguration:
        Status: Enabled
    Type: AWS::S3::Bucket


Getting Started
Services