Ops-dashboard/app/api/auth/logout/route.ts
Scrum4Me Agent be05724de0 feat: login page, session management, auth API routes en proxy guard
- lib/session.ts: token generatie, SHA-256 hashing, createSession/getCurrentUser/invalidateSession
- app/api/auth/login: bcrypt verificatie, session aanmaken, ops_session cookie (httpOnly, sameSite=strict, 24h TTL), rate-limit 5/min per IP
- app/api/auth/logout: session invalideren en cookie verwijderen
- app/login/page.tsx: login form (client component)
- proxy.ts: route-protectie – redirect naar /login zonder sessie (middleware.ts is deprecated in Next.js 16)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 17:10:07 +02:00

16 lines
463 B
TypeScript

import { NextRequest, NextResponse } from 'next/server'
import { cookies } from 'next/headers'
import { invalidateSession } from '@/lib/session'
export async function POST(_request: NextRequest) {
const cookieStore = await cookies()
const token = cookieStore.get('ops_session')?.value
if (token) {
await invalidateSession(token)
}
const response = NextResponse.json({ success: true })
response.cookies.delete('ops_session')
return response
}