Account e Bootstrap
Es gibt zwei Möglichkeiten, mit Nexo SaaS zu starten.
A. Inizializzazione del database (prima accensione tipica di Docker)
docker compose -f deploy/docker-compose.yml exec app php artisan db:seed --force
Crea (tra le altre cose):
- Amministratore della piattaforma [email protected] / password con email già verificata
- Test cliente [email protected]
- Catalogo di esempio (bundle, moduli, componenti aggiuntivi)
- Impostazioni predefinite per host + piattaforma
Adatto alla valutazione locale. Modificare password ed e-mail prima di qualsiasi ambiente condiviso.
B. Registrazione di un database vuoto (stile produzione)
- Apri /register.
- Crea il primo account.
- Se non esiste ancora alcun amministratore della piattaforma, quell’utente viene automaticamente promosso ad amministratore della piattaforma e riceve un’organizzazione personale.
- L’app reindirizza alla verifica dell’email (/verify-email).
Finché l’e-mail non viene verificata, l’utente non può utilizzare la dashboard o l’area di amministrazione (middleware di autenticazione + verifica).
Verifica dell’email senza SMTP
SMTP è necessario per la posta di produzione (link di verifica, fatture, notifiche di deploy). Al primo installazione, spesso configuri SMTP dopo aver creato l’account amministratore.
Artigiano: verifica un utente via email
# Docker
docker compose -f deploy/docker-compose.yml exec app \
php artisan platform:verify-user [email protected]
# Bare metal / VPS app directory
php artisan platform:verify-user [email protected]
Comportamento:
- Imposta `email_verified_at` su now (idempotente se è già verificata).
- Scrive un registro di audit (auth.email_verified, tramite artisan).
- Opzionale: --unverify rimuove la verifica (solo test).
Accedi e continua alla dashboard.
Avvertenza: chiunque abbia accesso alla shell al container dell’app può verificare qualsiasi email. Limita l’accesso SSH/deploy come faresti con qualsiasi segreto di produzione.
Dopo la configurazione di SMTP
Preferisci le email di verifica normali (reinvia dalla schermata di verifica). Mantieni platform:verify-user come avvio di emergenza/ripristino assistito.
Scopri di più sulla configurazione SMTP.
Privilegi di amministratore della piattaforma
| Capability | Platform admin | Org member |
|---|---|---|
| Admin → Settings, Catalog, Refunds, Users | Yes | No |
| Horizon (queue UI) | Yes (with 2FA policy) | No |
| Manage any installation | Yes (admin tools) | Own org only |
| Checkout / org billing | Via membership | Yes (role-dependent) |
Promuovere o retrocedere
php artisan platform:promote-admin [email protected]
php artisan platform:promote-admin [email protected] --demote
- Impossibile retrocedere l’ultimo amministratore della piattaforma.
- Al di fuori di local, gli amministratori della piattaforma devono abilitare 2FA prima che funzioni /dashboard/admin.
Politica 2FA
| Audience | Policy |
|---|---|
| Platform admins (non-local) | Required for admin routes |
| Customers | Optional when Admin → Settings → General → Two-factor available is enabled |
Account dei clienti e organizzazioni
Alla registrazione (qualsiasi utente):
- La riga dell’utente viene creata.
- Un’organizzazione personale viene creata con l’utente come proprietario.
- I limiti di posti/installazione provengono dalle impostazioni predefinite in Admin → Settings → Deployments (default_max_seats, default_max_installations).
Le organizzazioni del team, gli inviti e i ruoli sono trattati in 05 — Fatturazione, org e rimborsi.
Sequenza di avvio consigliata per la produzione
- Distribuisci lo stack
- O imposta prima il seed e poi modifica le credenziali dell’amministratore, oppure registra l’email reale dell’operatore su un database vuoto.
- piattaforma:verifica utente operatore@… se la posta non è pronta.
- Abilita l’autenticazione a due fattori (2FA) per l’amministratore.
- Configura SMTP in Admin → Impostazioni
- Configura pagamenti, dominio, GitHub, S3
- php artisan platform:launch-check.
- Opzionalmente piattaforma:promote-admin aggiungere operatori aggiuntivi; verificare ogni email.