Back to Bricks
RBAC (Role Based Access)
Auth & SecurityEnterprise-grade role management. Assign roles (admin, editor) to users and enforce permissions via middleware.
rolespermissionsadminsecurityAuth Required
Backend:
prisma/schema.prismajavascript
1model Role {2 id String @id @default(uuid())3 name String @unique4 permissions String[]5 createdAt DateTime @default(now())6}7 8model UserRole {9 id String @id @default(uuid())10 userId String11 roleId String12 role Role @relation(fields: [roleId], references: [id])13 assignedAt DateTime @default(now())14}Paste Guide
Copy files to:
prisma/schema.prisma (append models)repositories/rbac.repo.jscontrollers/rbacController.jsroutes/rbacRoutes.jsAdd to server.js:
app.use('/api/rbac', require('./routes/rbacRoutes'));Stack
PrismaExpress
Test Examples
curl -X POST http://localhost:5000/api/rbac \
-H "Authorization: Bearer ADMIN_TOKEN" \
-d '{"name": "editor", "permissions": ["edit_posts"]}'curl -X POST http://localhost:5000/api/rbac/assign \
-H "Authorization: Bearer ADMIN_TOKEN" \
-d '{"userId": "user_id", "roleName": "editor"}'