A compliance-critical system needs every security layer switched on at once — not just one fix, but defense in depth:
- a WAF at the edge; the ALB accepts only from the WAF,
- app, database, cache, and S3 all private / not internet-reachable,
- no public SSH on the app tier,
- encryption at rest on the database, cache, and S3, and TLS in transit on the ALB, app, and database, and
- NAT for private egress. Miss any single layer and the volcano stays hot.