Abbiamo un microservizio del gateway Java Zuul che viene eseguito di fronte a tutti i nostri servizi. Questo gateway fornisce un controllo di sicurezza per tutto il traffico in entrata.
Abbiamo anche un servizio IAM che fornisce login / logout / crea funzionalità utente che si trovano dietro il gateway. Questi endpoint dovrebbero contenere le password.
Vogliamo assicurarci che le password di testo in chiaro viaggiano nel minor numero di sezioni possibile dei nostri sistemi. Possiamo avere il gateway che esegue il hashing della password in un filtro zuul e quindi inoltrare le richieste a IAM. Ma se qualcuno ignora il gateway in qualche modo, può potenzialmente raggiungere l'endpoint con un hash rubato e usarlo per ottenere l'accesso, come un tipo di attacco "Pass the Hash". Quindi vorremmo ridigitare l'hash generato dal gateway e quindi archiviare il valore nel database.
La domanda è, c'è qualche potenziale problema con l'hashing doppio tra i microservizi? Per denominare un'implementazione specifica, diciamo BCrypt, funzionerebbe?