WAF++ WAF++
Back to WAF++ Homepage

WAF-SUS-050 – Storage Lifecycle & Data Minimization

Beschreibung

Alle Storage-Ressourcen (S3, EBS, Azure Blob, GCS) MÜSSEN Lifecycle-Policies haben. Daten MÜSSEN automatisch in energieeffiziente Cold-Storage-Tiers tiered werden. CloudWatch Log Groups MÜSSEN retention_in_days gesetzt haben. Temporäre Daten MÜSSEN Ablaufregeln haben. Detached EBS-Volumes und stale Snapshots MÜSSEN regelmäßig bereinigt werden. Das Prinzip: Speichere nur, was nötig ist — so lange wie nötig — im energieeffizientesten Tier.

Rationale

Speicherenergie ist proportional zu gespeichertem Volumen und Tier-Energie. Hot-Storage (S3 Standard, Premium SSD) verbraucht mehr Energie pro GB als Cold-Tier (Glacier, Archive). Ohne Lifecycle-Policies akkumulieren Daten unbegrenzt im teuersten und energieintensivsten Tier. Das Prinzip der Datenminimierung (DSGVO Art. 5) und das Sustainability-Ziel sind vollständig ausgerichtet: weniger Daten = weniger Energie.

Bedrohungskontext

Risiko Beschreibung

Unbegrenzte Datenakkumulation

S3-Buckets ohne Lifecycle-Rules wachsen unbegrenzt im teuersten Tier; Energieverbrauch steigt proportional.

Infinite Log Retention

CloudWatch ohne retention_in_days akkumuliert Terabytes historischer Logs ohne Governance.

Orphaned EBS Volumes

Detached EBS-Volumes nach Instanz-Terminierung laufen weiter und verbrauchen persistent Energie.

DSGVO-Verstoß

Excessive Retention von personenbezogenen Daten ohne Lifecycle-Regel ist Verstoß gegen Art. 5 DSGVO.

Anforderung

  • Alle S3-Buckets MÜSSEN aws_s3_bucket_lifecycle_configuration haben

  • Alle CloudWatch Log Groups MÜSSEN retention_in_days gesetzt haben

  • Temporäre Daten (Build-Artefakte, Test-Daten) MÜSSEN Expiration-Regeln haben

  • EBS-Volumes SOLLEN delete_on_termination = true haben

  • Quarterly Orphaned-Resource-Scan MUSS für detached EBS und stale Snapshots durchgeführt werden

Implementierungsanleitung

  1. S3-Audit: Alle Buckets auflisten; Buckets ohne Lifecycle-Config identifizieren

  2. Standard-Lifecycle: Standard → STANDARD_IA (30d) → GLACIER (90d) → DELETE (per Policy)

  3. CloudWatch Retention: Modul für Standard-Log-Groups mit retention_in_days; Default 90 Tage

  4. S3 Intelligent-Tiering: Für Buckets mit unbekanntem Zugriffsprofil; automatisches Tiering

  5. EBS Cleanup: Quarterly: aws ec2 describe-volumes --filters Name=status,Values=available

  6. Incomplete Multipart: abort_incomplete_multipart_upload { days_after_initiation = 7 } überall

Reifegrad-Abstufung

Level Bezeichnung Kriterien

1

Keine Policies

Alle Buckets ohne Lifecycle; Log Groups ohne Retention; orphaned EBS überall.

2

Manuelle Cleanup-Kampagnen

Gelegentliche manuelle Reviews; einzelne Lifecycle-Policies für bekannte Hochvolumen-Buckets.

3

Systematisch mit Orphan-Scan

Alle S3 mit Lifecycle; alle Log Groups mit Retention; monatlicher Orphan-Scan.

4

Data-Minimization Policy

Data-Min Policy dokumentiert; Tags-driven Lifecycle; Storage-Emissionen getrackt.

5

Storage-Emissionen in SCI

KI-gestützte Datenklassifikation; Storage-CO₂ in SCI; automatisierte GDPR+Sustainability-Ausrichtung.

Terraform Checks

waf-sus-050.tf.aws.s3-lifecycle-required

Prüft: S3 Lifecycle Configuration vorhanden mit mindestens einem Rule.

Compliant Non-Compliant
resource "aws_s3_bucket_lifecycle_configuration" "data" {
  bucket = aws_s3_bucket.data.id
  rule {
    id     = "data-lifecycle"
    status = "Enabled"
    transition {
      days          = 30
      storage_class = "STANDARD_IA"
    }
    transition {
      days          = 90
      storage_class = "GLACIER"
    }
    expiration { days = 730 }
  }
}
resource "aws_s3_bucket" "data" {
  bucket = "acme-app-data"
  # Keine Lifecycle-Config
  # WAF-SUS-050 Violation
}

Remediation: aws_s3_bucket_lifecycle_configuration für alle S3-Buckets hinzufügen.

Evidenz

Typ Pflicht Beschreibung

IaC

✅ Pflicht

Terraform mit S3-Lifecycle-Rules und CloudWatch Log Group retention_in_days für alle Storage-Ressourcen.

Config

✅ Pflicht

AWS Config oder Cloud-Inventory: kein S3-Bucket ohne Lifecycle-Policy.

Process

Optional

Monthly Orphaned-Resource-Scan-Report.

Governance

Optional

Data-Minimization-Policy-Dokument.

Regulatorisches Mapping

Framework Controls

EU CSRD (Corporate Sustainability Reporting Directive)

ESRS E1 – Climate change; ESRS G1 – Governance; ESRS S1 – Own workforce; ESRS S2 – Workers in own workforce; ESRS S3 – Affected communities; ESRS S4 – Human rights

GHG Protocol (Corporate Accounting and Reporting Standard)

Scope 1 – Direct emissions; Scope 2 – Indirect emissions from purchased energy; Scope 3 – Other indirect emissions

Green Software Foundation (GSF)

Software Engineering Principles – Carbon-aware computing; Carbon accounting standards

SBTi (Science Based Targets initiative)

Target setting methodology; Validation and verification; Corporate target standards

ISO 14001:2015

Clause 6.1 – Actions to address risks and opportunities; Clause 8.1 – Operational planning and control; Clause 9.1.1 – Monitoring, measurement, analysis and evaluation

ISO 14064-1:2018

Clause 5 – GHG inventory quantification; Clause 6 – GHG inventory validation and verification

GDPR

Art. 28 – Processor obligations; Art. 32 – Security of processing

CSRD

ESRS E1-6 – Emissions; ESRS G1-3 – Governance

NIST SP 800-53

AU-1 – Audit and accountability policy; AU-2 – Audit events; AU-3 – Content of audit records

NIST CSF 2.0

GV.PO – Policy; DE.CM – Continuous monitoring; RV.RP – Recovery planning

TISAX

Information security – Sustainability; Prototype protection – Environmental protection

ANSSI SecNumCloud

Domain – Environmental impact

BIO

BIO – Milieueffecten

ENS High

op.exp.9 – Gestión del impacto ambiental

UK NCSC CAF

B6 – Environmental impact

CMMC 2.0

AU.L2-3.8.1 – Automated audit logging

IRAP

ISM – Environmental monitoring

CCCS PBMM

AU-2 – Audit events

MAS TRM

Ch.12 – Outsourcing risk management

ISMAP

Sustainability and environmental impact

FISC

Operational measures – Environmental impact