/ / Як відправити хешований пароль до DRF і отримати аутентифікацію - django, angular, аутентифікація, хеш, django-rest-framework

Як надіслати хешовий пароль для DRF та отримати автентифікацію - django, кутовий, аутентифікація, хеш, django-rest-framework

Я працюю над аутентифікацією користувачів у Django, і я знаю, що Django зберігає всі паролі, що хешируются в базі даних,

тому для того, щоб захистити облікові дані користувача, я повинен додати пароль до мого переднього кінця (Angular2) перед тим, як відправити його до мого заднього кінця (Django rest framework).

Проблема в тому, що я не знаю, чи Django виключає хешировані паролі, або він здатний порівнювати його з існуючим, і якщо так, то будь-який з них може вказати правильний шлях.

будь-яка допомога цінується, спасибі

Відповіді:

2 для відповіді № 1

Вам не потрібно використовувати хеш-пароль у Angular. Django не зрозуміє хешування паролів з боку Angular, оскільки Django хеширує паролі іншим способом і не має інформації, яка вказує, що те, що ви надсилаєте, є хешем. Навіть якщо б ви могли мати їх так само, Django б хеш його знову, що не буде працювати. Це,

H(password) != H(H(password))

Для однієї хеш-функції, H.

Надішліть на сервер пароль як звичайний текст. Захистіть пароль, передавши всі дані через TLS / SSL. Django буде приймати звичайний текстовий пароль, порівнювати хеші та аутентифікувати користувача як звичайно.