Sto creando un'applicazione Web con striature API e in questa applicazione abbiamo diversi livelli che stanno facendo il proprio lavoro.
Primo strato è di convalida strato che l'input dell'utente validate e se passa la convalida si sposta che al secondo strato (che è Access Control Layer) altrimenti restituisce il messaggio di errore
Il secondo livello è Controllo accessi che verifica se l'utente dispone dell'autorizzazione per eseguire l'attività che desidera eseguire, se l'utente dispone dell'autorizzazione sposta la richiesta al livello successivo, altrimenti restituisce un messaggio di errore
Il terzo livello è il livello del controller in cui abbiamo la logica dell'applicazione
La mia domanda è che va bene avere un livello di validazione prima del controllo degli accessi? Cosa succede se l'utente sta tentando di eseguire un'attività per la quale l'utente non dispone dell'autorizzazione e restituiamo un messaggio di errore di convalida? L'utente invia richieste a un endpoint e parla con il livello di convalida e, una volta superata la convalida, vedrà il messaggioYou can't access this!
Mi sembra strano, quindi va bene così o quali potrebbero essere le mie altre opzioni nell'infrastruttura?