Estou criando um aplicativo da Web com API cortada e nesse aplicativo temos camadas diferentes que estão fazendo seu próprio trabalho.
A primeira camada é a camada de validação que valida a entrada do usuário e, se passar na validação, a moveremos para a segunda camada (que é a camada de controle de acesso ). Caso contrário, retorne a mensagem de erro
A segunda camada é o Controle de acesso, que verifica se o usuário tem permissão para executar a tarefa que deseja executar. Se o usuário tiver permissão, move a solicitação para a próxima camada, caso contrário, retorne a mensagem de erro
Terceira camada é a camada do controlador, onde temos a lógica da aplicação
Minha pergunta é que é bom ter uma camada de validação antes do controle de acesso? E se o usuário estiver tentando executar uma tarefa à qual ele não tem permissão e estamos enviando uma mensagem de erro de validação? O usuário estaria enviando solicitações para um ponto de extremidade e conversando com a camada de validação e, uma vez aprovada na validação, ele veria a mensagemYou can't access this!
Parece estranho para mim, então está bem assim ou quais poderiam ser minhas outras opções em infraestrutura?