Sto lavorando su un'applicazione implementata utilizzando l'architettura dei microservizi. Esiste un servizio di autenticazione (A) che utilizza lo standard jwt e ci sono altri servizi nell'applicazione come S1, S2, S3 e così via. Ora, per esempio, S1 riceve una richiesta, dovrebbe convalidare il token per vedere se l'utente è autorizzato o meno. La convalida può essere ottenuta con:
- Invio del token da S1 a A, quindi A convalida il token e invia il risultato a S1 (che è un tipo di overhead)
- Convalidare il token all'interno di S1 (che è un'azione duplicata all'interno di ogni servizio, richiede anche chiavi segrete o chiavi pubbliche / private all'interno di ciascun servizio, per la firma / verifica)
Non sto chiedendo come funzionano esattamente questi approcci. Le domande sono, qual è quella migliore? O qual è la migliore pratica in questa situazione?