FireFeed Docs

Setup super-admin

Come provisionare il primo utente super-admin su un'istanza FireFeed.

Per la versione completa originale vedi docs/super-admin-setup.md nel repo. Questa pagina ne è il porting MDX.

Cos'è un super-admin

Un super-admin ha accesso a:

  • gestione companies (creazione, sospensione)
  • gestione invitations cross-company
  • ispezione delle pipeline runs di qualsiasi tenant
  • accesso al pannello /admin/...

Non sostituisce l'auth utente normale: il super-admin è un utente con un flag isSuperAdmin: true nella tabella users.

Provisioning

1. Prima company creata via Keycloak

Il primo utente che si logga via SSO non è super-admin di default. Devi promuoverlo manualmente:

UPDATE users SET "isSuperAdmin" = true WHERE email = 'tu@dominio.com';

2. Logout / login

Il flag viene letto nel callback NextAuth alla creazione della sessione. Dopo l'update SQL, fai logout completo (Keycloak logout) e rilogga.

3. Verifica

Vai su /admin — se sei super-admin vedi il pannello, altrimenti 403.

Demote

Stesso pattern al contrario:

UPDATE users SET "isSuperAdmin" = false WHERE email = '...';

In dev

Lo seed (pnpm db:seed) può opzionalmente creare un super-admin di default; controlla packages/shared/prisma/seed.ts per gli email hard-coded.

In produzione

Procedura raccomandata:

  1. SSH sull'host produzione.
  2. docker compose exec web pnpm --filter @firefeed/shared exec prisma studio per accesso UI alle tabelle (oppure psql diretto).
  3. Update flag, verifica con SELECT.
  4. Logout/login dell'utente promosso.

Mai esporre Prisma Studio su porta pubblica.

In questa pagina