Guides

Beveiligingschecklist voor productie-launch

Ga niet live zonder deze beveiligingschecklist. 40+ controles voor een veilige productie-omgeving.

18 avril 20265 min de lectureWarDek Team

Niet live gaan zonder deze checklist

De overgang van ontwikkeling naar productie is het moment waarop beveiligingsfouten consequenties krijgen. Wat in een testomgeving een bug is, wordt in productie een kwetsbaarheid. Deze checklist helpt u de kritieke controles uit te voeren vóórdat uw applicatie live gaat.

1. Infrastructuur en server

SSL/TLS

  • SSL/TLS-certificaat geïnstalleerd en geldig
  • HTTPS enforced (HTTP redirect naar HTTPS)
  • HSTS-header actief met voldoende max-age (minimaal 1 jaar)
  • TLS 1.2 als minimum (TLS 1.0 en 1.1 uitgeschakeld)
  • Sterke cipher suites geconfigureerd
  • SSL Labs score minimaal A

Server

  • Productie-modus actief (geen debug/development mode)
  • Server-versie headers verborgen (Server, X-Powered-By verwijderd)
  • Directory listing uitgeschakeld
  • Standaardpagina's verwijderd (welkomstpagina's, phpinfo)
  • Firewall actief (alleen noodzakelijke poorten open)
  • SSH: key-based authenticatie, geen root login, niet-standaard poort

DNS

  • CAA-record geconfigureerd (beperkt welke CA's certificaten mogen uitgeven)
  • DNSSEC actief indien ondersteund door registrar
  • SPF, DKIM en DMARC voor e-maildomeinen

2. Applicatie

Authenticatie

  • Wachtwoord-hashing met bcrypt, scrypt of Argon2
  • Brute force bescherming (rate limiting, account lockout)
  • Sessietokens veilig gegenereerd (cryptografisch willekeurig)
  • Sessie-timeout geconfigureerd (inactiviteit + absolute maximumduur)
  • Sessie-invalidatie bij wachtwoordwijziging
  • MFA beschikbaar voor beheeraccounts
  • Wachtwoord-reset via tijdelijke, eenmalige tokens

Autorisatie

  • Rolgebaseerde toegangscontrole (RBAC) geïmplementeerd
  • Serverzijdige autorisatiecontrole op elk endpoint
  • IDOR-bescherming (Insecure Direct Object References)
  • Admin-functionaliteit gescheiden van gebruikersfunctionaliteit

Input en output

  • Alle gebruikersinvoer gevalideerd (serverzijdig)
  • Parameterized queries voor alle database-operaties
  • Output encoding/escaping tegen XSS
  • Bestandsuploads gevalideerd en gesandboxed
  • Content-Security-Policy header geïmplementeerd

3. Security headers

  • Content-Security-Policy — beschermt tegen XSS en code-injectie
  • X-Content-Type-Options: nosniff — voorkomt MIME-sniffing
  • X-Frame-Options: DENY of SAMEORIGIN — voorkomt clickjacking
  • Referrer-Policy — beperkt referrer-informatie
  • Permissions-Policy — beperkt browser-API toegang
  • Strict-Transport-Security — forceert HTTPS
  • X-XSS-Protection: 0 — laat CSP het werk doen (vermijd legacy browser filter)

4. Gegevensbescherming

Opslag

  • Gevoelige data versleuteld (at rest)
  • Database-credentials niet in code (gebruik environment variables)
  • Geen hardcoded secrets, API keys of tokens
  • .env-bestanden niet toegankelijk via web
  • Git-repository bevat geen secrets (controleer historie)

Transport

  • Alle API-communicatie via HTTPS
  • Cookies met Secure, HttpOnly en SameSite attributen
  • Geen gevoelige data in URL-parameters
  • CORS correct geconfigureerd (niet * in productie)

Logging

  • Geen wachtwoorden of tokens in logs
  • Geen PII (persoonsgegevens) in logs tenzij noodzakelijk
  • Logs beveiligd tegen ongeautoriseerde toegang
  • Log-retentie geconfigureerd

5. Dependencies

  • Alle dependencies up-to-date
  • Geen bekende kwetsbaarheden (npm audit, pip audit, etc.)
  • Lockfile aanwezig en gecommit (package-lock.json, pnpm-lock.yaml)
  • Ongebruikte dependencies verwijderd
  • Development dependencies niet in productie-build

6. Foutafhandeling

  • Generieke foutmeldingen naar gebruikers (geen stacktraces)
  • Gedetailleerde fouten alleen in logs (niet in responses)
  • Custom 404- en 500-pagina's
  • Geen technische details in productie-errors
  • Error monitoring actief (Sentry, LogRocket, etc.)

7. AVG/Privacy

  • Privacyverklaring aanwezig en actueel
  • Cookiebanner conform AP-richtlijnen
  • Verwerkingsregister bijgewerkt
  • Verwerkersovereenkomsten met alle derde partijen
  • Data minimalisatie — alleen noodzakelijke gegevens verzamelen
  • Bewaartermijnen gedefinieerd en geïmplementeerd

8. Back-up en recovery

  • Automatische back-ups geconfigureerd
  • Back-ups op separate locatie opgeslagen
  • Back-ups versleuteld
  • Restore-procedure getest
  • Recovery Time Objective (RTO) gedefinieerd
  • Recovery Point Objective (RPO) gedefinieerd

9. Monitoring

  • Uptime monitoring actief
  • Error tracking geconfigureerd
  • Security alerting bij verdachte activiteit
  • Performance monitoring
  • SSL-certificaat verloop monitoring

10. Documentatie

  • Incident response plan opgesteld
  • Contactlijst voor security-incidenten
  • Deployment procedure gedocumenteerd
  • Rollback procedure getest

Scoretabel

CategorieItemsAfgevinktScore
Infrastructuur12______%
Applicatie15______%
Security headers7______%
Gegevensbescherming11______%
Dependencies5______%
Foutafhandeling5______%
AVG/Privacy7______%
Back-up en recovery6______%
Monitoring5______%
Documentatie4______%

Minimale score voor live: 80% in elke categorie. Items in categorie 1-4 zijn niet-onderhandelbaar.

Geautomatiseerde controle

Veel van deze checks kunnen geautomatiseerd worden gescand. Bespaar tijd en voorkom menselijke fouten door geautomatiseerde security scans in te zetten voor en na elke deployment.


Scan uw website gratis met WarDek — OWASP, NIS2, AVG, AI Act compliance in één scan.

#beveiliging#checklist#productie#launch

Scannez votre site gratuitement

WarDek détecte les vulnérabilités mentionnées dans cet article en quelques secondes.