Sto lavorando per autenticare gli utenti in Django e so che Django mantiene tutte le password con hash nel database,
quindi, al fine di proteggere le credenziali dell'utente, devo inserire la password nel mio front-end (Angular2) prima di inviarla al mio back-end (Django rest framework).
Il problema è che non so se Django esclude le password con hash o è in grado di confrontarlo con quello esistente e, in tal caso, può indicare una persona che mi indichi la strada giusta.
ogni aiuto è apprezzato, grazie
risposte:
2 per risposta № 1Non è necessario hash la password in Angular. Django non capirà una password hash di Angular, dal momento che Django blocca le password in un modo diverso e non ha informazioni che indicano che quello che stai inviando è un hash. Anche se tu fossi in grado di averli allo stesso modo, Django lo farebbe di nuovo, cosa che non funzionerebbe. Questo è,
H(password) != H(H(password))
Per una singola funzione di hash, H
.
Invia la password come testo normale al server. Proteggi la password trasferendo tutti i dati su TLS / SSL. Django accetterà la password in testo semplice, confronterà gli hash e autentificherà l'utente normalmente.