Skip to content
Back to skills

Nextjs Authentication

ASecurity

Use middleware to read and verify the session cookie, then redirect unauthenticated requests: ```ts // middleware.ts import { NextResponse, type NextRequest } from 'next/server' export function middleware(request: NextRequest) { const session = request.cookies.get('session')?.value if (!session || !verifySession(session)) { const login = new URL('/login', request.url) login.searchParams.set('next', request.nextUrl.pathname) return NextResponse.redirect(login) } return NextResponse.next() } ex...

  • 549 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 5, 2026
development

Security analysis

A100/100

Pro scans all 11 files and shows the line behind each finding

Scanned September 5, 2026

npx -y skills add HoangNguyen0403/agent-skills-standard --skill nextjs-authentication --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Nextjs Authentication?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Nextjs Authentication
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/hoangnguyen0403-nextjs-authentication-f1ffd244/badge)](https://www.skillsdirectory.com/skills/hoangnguyen0403-nextjs-authentication-f1ffd244)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
# Protect `/dashboard`

Use middleware to read and verify the session cookie, then redirect unauthenticated requests:

```ts
// middleware.ts
import { NextResponse, type NextRequest } from 'next/server'

export function middleware(request: NextRequest) {
  const session = request.cookies.get('session')?.value
  if (!session || !verifySession(session)) {
    const login = new URL('/login', request.url)
    login.searchParams.set('next', request.nextUrl.pathname)
    return NextResponse.redirect(login)
  }
  return NextResponse.next()
}

export const config = { matcher: ['/dashboard/:path*'] }
```

Use a real edge-compatible verifier in place of `verifySession`; do not rely on a layout-only check, and repeat authorization in each DAL function or mutation.

Files in this skill

  • eval-1.baseline.md984 B
  • eval-1.with-skill.md428 B
  • eval-2.baseline.md971 B
  • eval-2.with-skill.md765 B
  • eval-3.baseline.md1.1 KB
  • eval-3.with-skill.md430 B
  • trigger-1.md124 B
  • trigger-2.md116 B
  • trigger-3.md111 B
  • trigger-4.md94 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…