brackt/docs/agents/auth.md
2026-04-17 14:17:49 -07:00

7 lines
414 B
Markdown

# Authentication
- Auth is handled by Clerk (`@clerk/react-router`)
- User records are synced from Clerk via webhook at `routes/api/webhooks/clerk.ts`
- Ownership validation: check `ownerId` field against the Clerk user ID (`clerkId`)
- Admin access: `isAdmin` boolean on the users table; all `/admin` routes enforce this
- League commissioners: stored separately in the `commissioners` table (not via `isAdmin`)