-
Notifications
You must be signed in to change notification settings - Fork 0
Service MenuGuard
simone.tiberti edited this page Apr 23, 2026
·
2 revisions
Guard CanActivateChild che protegge le rotte verificando che il percorso corrente sia tra quelli concessi dal token backend. In caso negativo reindirizza a /forbidden.
Applicato automaticamente da
toRoutes()— non è necessario configurarlo manualmente.
-
/forbidden,/not-founde/errorsono sempre consentiti (loop prevention) - Attende il completamento del bootstrap con
await system.bootstrap()— la promise è già avviata daSystemService, il guard si aggancia alla stessa promise senza avviarne una nuova - Se
layoutState() === 'error'(bootstrap fallito) → redirect/error - Confronta sia l'URL concreto che il path template (con placeholder
:param), permettendo rotte come/users/:id - La root
/è considerata consentita se''o'/'è tra gli endpoint del token - Non consentito → redirect
/forbidden
URL richiesto: /users/42
↓
Path template: /users/:id
↓
Confronto contro allowedEndpoints da paths
↓
Consentito → true / Non consentito → redirect /forbidden
toRoutes(APP_ROUTES) genera automaticamente:
{
path: '',
component: MainLayoutComponent,
canActivateChild: [MenuGuard],
children: [
// tutte le rotte di APP_ROUTES
{ path: 'error', component: ErrorPage },
{ path: 'forbidden', component: ForbiddenPage },
{ path: '**', component: NotFoundPage },
]
}- → Routing e permessi — struttura delle rotte e capability
- → SystemService —
paths,allowedEndpoints,layoutState
Sviluppato e mantenuto da GPA — Gruppo Progetti Avanzati s.r.l. · gpa@gpagroup.it · +39 065913642 · P.IVA 05049391005 · ISO 9001 · ISO 27001
Sede legale: Via Ferdinando Galiani, 68 — 00191 Roma | Sedi operative: Piazzale Asia 21, Roma · Via Badoero 67, Roma · Viale Chiavellati 9, Foligno (PG)
npm · GitHub · Segnala un problema · Licenza MIT