WAF-REL-110 – Circuit Breaker, Backpressure und Rate Limiting müssen für Downstream-Abhängigkeiten definiert sein
Beschreibung
Every downstream HTTP/gRPC dependency MUST have explicit timeout, retry, circuit breaker, and bulkhead configuration. Services MUST propagate backpressure instead of accepting unbounded load. Rate limits MUST protect backends from accidental or malicious overload. Configuration MUST be observable through metrics and tested via chaos or fault injection.
Begründung
| Risiko | Beschreibung |
|---|---|
Risk |
Cascading failures spread when a single slow dependency saturates all callers. |
Risk |
Unbounded retries during outages amplify load and prevent recovery of failing services. |
Anforderungen
-
Every downstream HTTP/gRPC dependency MUST have explicit timeout, retry, circuit breaker, and bulkhead configuration.
-
Services MUST propagate backpressure instead of accepting unbounded load.
-
Rate limits MUST protect backends from accidental or malicious overload.
-
Configuration MUST be observable through metrics and tested via chaos or fault injection.
Implementierungsleitfaden
-
Document the requirement in a version-controlled policy, ADR, or standard.
-
Assign ownership and establish a review cadence (e.g., quarterly).
-
Implement the required configuration as code in Terraform or equivalent IaC.
Reifegrade
| Level | Name | Kriterien |
|---|---|---|
L1 |
Ad hoc – control not consistently applied |
* Die Anforderung ist nicht einheitlich umgesetzt; Nachweis existiert nur punktuell oder fehlt. |
L2 |
Standardised – policy defined and communicated |
* Eine dokumentierte Policy oder ein Standard beschreibt die Anforderung. |
L3 |
Integrated – automated validation in CI/CD |
* Terraform-Checks oder IaC-Gates prüfen die Anforderung automatisch in CI/CD. |
L4 |
Auditable – metrics and exceptions tracked |
* Abdeckung, Ausnahmen und Qualitätsmetriken werden quartalsweise berichtet. |
L5 |
Optimised – continuous improvement based on data |
* Die Effektivität wird kontinuierlich gemessen und automatisch optimiert. |
Checks
waf-rel-110.tf.aws.alb-timeout
Engine: terraform | Provider: aws | Automated: Ja
AWS ALB Idle Timeout muss explizit konfiguriert sein
AWS ALB Idle Timeout muss explizit konfiguriert sein
Scope: resource — aws_lb
Assertions:
* idle_timeout attribute_exists — ALB idle_timeout must be explicitly set.
Remediation: AWS ALB Idle Timeout muss explizit konfiguriert sein
# Beispiel konform zu waf-rel-110.tf.aws.alb-timeout
# Beispiel nicht konform zu waf-rel-110.tf.aws.alb-timeout
waf-rel-110.tf.aws.api-gateway-throttle
Engine: terraform | Provider: aws | Automated: Ja
AWS API Gateway muss Throttling-Einstellungen definieren
AWS API Gateway muss Throttling-Einstellungen definieren
Scope: resource — aws_api_gateway_stage, aws_apigatewayv2_stage
Assertions:
* throttle_settings attribute_exists — API Gateway stage must define throttling.
Remediation: AWS API Gateway muss Throttling-Einstellungen definieren
# Beispiel konform zu waf-rel-110.tf.aws.api-gateway-throttle
# Beispiel nicht konform zu waf-rel-110.tf.aws.api-gateway-throttle
waf-rel-110.tf.azurerm.app-gateway-timeout
Engine: terraform | Provider: azurerm | Automated: Ja
Azure Application Gateway Backend-Einstellungen müssen explizite Request Timeouts definieren
Azure Application Gateway Backend-Einstellungen müssen explizite Request Timeouts definieren
Scope: resource — azurerm_application_gateway
Assertions:
* backend_http_settings.request_timeout_in_seconds attribute_exists — Backend HTTP settings must define request timeout.
Remediation: Azure Application Gateway Backend-Einstellungen müssen explizite Request Timeouts definieren
# Beispiel konform zu waf-rel-110.tf.azurerm.app-gateway-timeout
# Beispiel nicht konform zu waf-rel-110.tf.azurerm.app-gateway-timeout
waf-rel-110.config.resilience-policy
Engine: config | Provider: any | Automated: Nein
Circuit-Breaker-Policy muss dokumentiert sein
Circuit-Breaker-Policy muss dokumentiert sein
Scope: file — docs/reliability/circuit-breaker-policy.md
Assertions:
* exists attribute_exists — Circuit breaker/backpressure policy must exist.
Remediation: Circuit-Breaker-Policy muss dokumentiert sein
# Beispiel konform zu waf-rel-110.config.resilience-policy
# Beispiel nicht konform zu waf-rel-110.config.resilience-policy
Evidenz
-
Terraform-Konfiguration, die die Anforderung umsetzt.
-
Policy, ADR oder Standard, der die Anforderung dokumentiert.
-
Optionale Cloud-Konsolen- oder API-Ausgaben, die den Laufzeit-Zustand bestätigen.
Verwandte Controls
-
WAF-AGN-110 == Regulatorisches Mapping
-
ISO 27001:2022: A.17.1 – Information security continuity
-
SRE Book (Google): Chapter 22 – Addressing Cascading Failures
-
ITIL 4: Service Continuity Management
-
NIST CSF 2.0: RS.RP-01 – Response plan is executed