Проект был создан в целях практики над созданием авторизации и аутентификации с помощью JWT токена и разграничения доступа к данным по ролям пользователей. Без использования refresh токена.
Организована автоматическая миграция и заполнение базы данных тестовыми сущностями (5 шт.), можно посмотреть данные в файле test_data_loader.py в корне django проекта.
.env файл приложен для более простого запуска в режиме dev, для prod нужно менять данные и настройки, а также изменить профиль docker-compose
- Django
- PyJWT
- bcrypt
- Gunicorn
- Postgresql
- Docker Compose
/register: Позволяет зарегестрировать пользователя/login: Позволяет авторизироватся и получить jwt в куки/profile: Позволяет изменить данные профиля пользователя (кроме email) и soft delete/songs: Просмотр списка песен с ограничениями основанными на ролях пользователей, возможность открыть песню отдельно. Без излишней информации, создано только для тестирования.
Доступные только роли admin:
/admin: Просмотр пользователей и возможность заблокировать или поменять роль отдельного пользователя.
Требуется:
- Предварительно установленный docker-compose
Склонируйте репозиторий на локальную машину:
git clone https://github.com/Grizzzley/custom-auth-practice-django.gitВ папке с проектом запустите Docker-compose:
docker-compose up --buildПроект для локального тестирования будет доступен по: http://localhost:8000/register/
