247 messaggi dal 13 novembre 2009
Salve,
utilizzando il template API di Visual Studio ho creato un webapi Core aggiungendo ClientApp Angular6.
Vorrei sottoporvi questo. Sul servizio REST non ho problemi a capire come strutturare. Su Angular invece vorrei che i moduli che individuano i miei servizi commerciali vengono caricati in base al token. La logica dovrebbe essere questa:
il token rilasciato dalla webapi ha come payload elenco di moduli/funzionalità. I nomi dei moduli e le funzionalità corrispondono ai moduli angular e questi devono essere caricati solo se lo prevede il token.
In altri termini le routes del modulo base app.routing.ts conterranno elenco dei moduli/funzionalità presenti nel playload del token.
Il codice di ogni singolo modulo non deve essere coricato al bootstrap dell'applicazione client ma solo at runtime in modo che la app carichi solo c'è che serve in funzione del playload del token.
Quindi la ClientApp contiene codice comune a tutti gli utenti e moduli certamente presenti per tutti ma:
- il token di Mario dice che lui può caricare anche il modulo2: ricostruendo le routes del routing principale viene caricato il link al modulo2 childrouting con #module
- il token di Luca dice che lui può caricare anche il modulo3: ricostruendo le routes del routing principale viene caricato il link al modulo3 childrouting con #module
Non so se è chiaro. L'intento è quello di rendere accessibili i moduli solo in base al token a ai payload evitando di far accedere ad esempio nel modulo admin chi non autorizzato.
So che posso utilizzare AuthGuard su CanActivate ma è sufficiente ed efficace dal punto di vista della sicurezza e per eviatare di precaricare codice si moduli non necessari all'utente?

Una alternativa potrebbe essere creare una MVC app con aree e tenere il testa al querystring ogni volta che avviene la redirect lato server il token come parametro e controllare e fare una redirect a pagenotfound o login se il token non prevede utilizzo del modulo/area richiesto.


F.
Modificato da flaviovb il 14 ottobre 2018 17.36 -

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.