Аутентификация Django без функциональности Django Admin
Я работаю над Rest API, используя Django Rest Framework. Я хочу добавить регистрацию и аутентификацию, но не знаю, как это сделать.
В официальной документации есть куча способов сделать это, но все они, похоже, используют функциональность Django Admin (наследуя свои классы User от AbstractBaseUser), которую я не хочу использовать.
Я хочу сделать это с нуля, иметь свой собственный класс Person, который не использует никакой функциональности Django Admin. Я планирую отключить Django Admin в своем проекте.
Есть ли способ сделать это?
Ну, это можно сделать, но это немного сложнее и, как правило, не рекомендуется, если вы не знаете, что именно вы делаете (учитывая все аспекты безопасности). Вы всегда можете создать пользовательскую модель (я не говорю об использовании AbstractBaseUser, просто обычную модель) и ее менеджер для хранения пользовательских данных и получения, а также вам придется создать пользовательское промежуточное ПО, соответствующее вашим потребностям. (промежуточное ПО для получения данных сессии и соответствующего ID пользователя в соответствии с вашей пользовательской моделью)
Вам также нужно будет серьезно поработать над алгоритмом хэширования и знать, что именно вы делаете. Вам также нужно будет поработать над вашим промежуточным ПО, чтобы повторить всю функциональность, которую обычно предоставляет Django. (например, request.user и т.д.) Это выполнимо, но поражение - главная цель Django.