← Terug naar de blog
BeveiligingScanaris Team · 2 min lezen · July 13, 2026

Beveiligingschecklist voor je Next.js-app vóór de lancering

Een Next.js-app lanceren met Cursor, v0 of Bolt gaat snel, maar snelheid verbergt gebreken die je pas ziet als iemand ze voor je vindt. Deze checklist dekt het absolute minimum voordat je op deploy drukt.

Omgevingsvariabelen: let op NEXT_PUBLIC

Alles wat begint met NEXT_PUBLIC_ wordt in de browser-bundle gebakken. Iedereen kan het lezen door de DevTools te openen. Zet daar nooit een privé-API-sleutel, een service-token of het geheim van je database neer.

Reserveer dat voorvoegsel voor echt openbare waarden, zoals je API-URL of een analytics-ID. Variabelen zonder voorvoegsel leven alleen op de server: gebruik ze voor privé-sleutels en lees ze alleen vanuit Server Components, API routes of Server Actions.

API routes: valideer en autoriseer altijd

Een API route is niet privé alleen omdat die in je map staat. Het is een openbare URL die iedereen met curl kan aanroepen. Controleer de gebruikerssessie in elke handler, niet alleen in de UI. Een verborgen knop houdt niemand tegen om het endpoint direct te raken.

Valideer de request-body voordat je de database aanraakt, en vertrouw er nooit op dat de frontend schone data stuurt. Een aanvaller schrijft zijn eigen frontend.

Beveiligingsheaders

Standaard stuurt Next.js geen defensieve headers. Voeg in next.config.js minstens Strict-Transport-Security, X-Content-Type-Options, X-Frame-Options en een Content-Security-Policy toe. Deze headers beperken clickjacking, type-sniffing en het uitvoeren van geïnjecteerde scripts.

Secrets die naar de client lekken

Het gebeurt makkelijk dat een privé-sleutel per ongeluk in een Client Component belandt, zeker als AI bestanden herschrijft. Zoek in je uiteindelijke bundle naar strings als sk_, service_role of webhook-URL's. Duiken ze op in geserveerde JavaScript, dan zijn ze al gecompromitteerd: roteer ze en verplaats ze naar de server.

Bestanden die niet bereikbaar zouden mogen zijn

Zorg dat .env, .git en back-upbestanden niet in productie worden geserveerd. Een via URL bereikbare .env is de meest directe route naar een leeggehaalde database. Check ook dat package.json geen interne paden of dependencies blootgeeft die je stack verraden.

Check dit allemaal in 30 seconden

Deze lijst met de hand nalopen bij elke deploy is vervelend en snel vergeten. Scanaris draait read-only checks tegen je gepubliceerde site: headers, secrets die in de JavaScript zijn blootgesteld, bereikbare gevoelige bestanden en cookie-instellingen. Elke bevinding komt met een prompt klaar om in je AI te plakken zodat je het zonder gokken oplost. Scan 'm voordat je je lancering aankondigt.

Hoe staat je site ervoor?

Laat Scanaris er even overheen gaan en check het in 30 seconden, gratis.

Mijn site scannen

Gerelateerde checks

Beveiligingsgidsen per stack