1---2name: security-checklist3description: Reference document for monopoly security-checklist.4---56# MONOPOLY — Security Hardening Checklist78## Network Security9- [ ] All services inside private VPC; only LB/API GW exposed publicly10- [ ] Security groups follow least-privilege (deny all, allow specific ports/CIDRs)11- [ ] NACLs as secondary defense layer12- [ ] WAF enabled with OWASP top 10 ruleset13- [ ] DDoS protection (Cloudflare / AWS Shield Standard minimum)14- [ ] VPN or Private Link for inter-service communication in multi-region1516## Authentication & Authorization17- [ ] JWT tokens with short expiry (15 min access, 7 day refresh)18- [ ] OAuth 2.0 / OIDC for third-party auth19- [ ] MFA enforced for admin accounts20- [ ] RBAC or ABAC for authorization21- [ ] No secrets in JWT payload (use opaque references)22- [ ] Token revocation strategy (Redis blocklist or short TTL)2324## API Security25- [ ] Rate limiting at API gateway (per user, per IP, per endpoint)26- [ ] Input validation and sanitization on all endpoints27- [ ] SQL injection prevention (parameterized queries, ORM)28- [ ] XSS prevention (output encoding, CSP headers)29- [ ] CSRF protection (SameSite cookies, CSRF tokens)30- [ ] CORS policy locked down (not wildcard `*`)31- [ ] HTTP security headers (HSTS, X-Frame-Options, X-Content-Type-Options)3233## Data Security34- [ ] Encryption in transit (TLS 1.2+ everywhere, TLS 1.3 preferred)35- [ ] Encryption at rest (AES-256 for DBs, S3 SSE)36- [ ] PII data identified, minimized, and encrypted at field level where needed37- [ ] Database backups encrypted38- [ ] No sensitive data in logs (PII, passwords, tokens, card numbers)3940## Secrets Management41- [ ] No secrets in code or enprojectnment variables in plain text42- [ ] Secrets manager in use (HashiCorp Vault, AWS Secrets Manager, GCP Secret Manager)43- [ ] Secrets rotation automated44- [ ] IAM roles for service-to-service auth (not static credentials)4546## Supply Chain & Dependencies47- [ ] Dependency scanning (Snyk, Dependabot, npm audit)48- [ ] Container image scanning (Trivy, ECR scanning)49- [ ] Pin dependency versions in production50- [ ] SBOM (Software Bill of Materials) generated for compliance5152## Incident Response53- [ ] Audit logs for all admin actions and data access54- [ ] Alerting on anomalous access patterns55- [ ] Incident response runbook documented56- [ ] Data breach notification process defined (GDPR 72-hour rule)57- [ ] Regular penetration testing scheduled5859## Compliance (as applicable)60- [ ] GDPR: data residency, right to deletion, consent tracking61- [ ] PCI-DSS: if handling card data — never store raw PANs62- [ ] HIPAA: if health data — encryption, audit logs, BAA with vendors63- [ ] SOC 2 Type II: access control, availability, confidentiality evidence646566## Limitations67- This is a reference document and may not cover all edge cases. Always verify architectures before production.