Простой, минималистичный и функциональный онлайн менеджер паролей, написанный на фреймворках Django, Django REST Framework. Проект использует реляционную СУБД PostgreSQL в качестве основной базы данных, библиотеку celery для работы с отложенными задачами, нереляционную СУБД Redis в качестве брокера сообщений и для кэширования. Также применяется библиотека dj-rest-auth для операций с аккаунтом через REST API, к которому также имеется Swagger-схема, сгенерированная при помощи drf-spectacular. Программа Docker'изирована. Используемый линтер и форматер кода - ruff.
git clone https://github.com/waflawe/eXinakai.git
cd eXinakai/
- Установка зависимостей:
pip install -r requirements/dev.txt
- Создаем файл
.env
и заполняем его по примеру файла.env.template
, при необходимости изменяя помеченные комментарием переменные. - Запускаем отдельно три окна терминала. В первом запускаем
Redis
:
redis-server
- Во втором запускаем
Celery
:
celery -A core.celery_setup:app worker --loglevel=info
- В третем запускаем проект:
python manage.py runserver 0.0.0.0:8000
- Переходим в интернет-обозревателе на страницу 127.0.0.1:8000.
- Наслаждаемся.
- Создаем файл
.env.docker
и заполняем его по примеру файла.env.docker.template
, при необходимости изменяя помеченные комментарием переменные. - Поднимаем
Docker-compose
:
docker-compose up
- Переходим в интернет-обозревателе на страницу 127.0.0.1:80.
- Наслаждаемся.
В eXinakai
можно выполнять следующие действия с аккаунтом:
- Регистрация
- Авторизация
- Сброс пароля аккаунта
- Изменение пароля аккаунта
- Изменение настроек аккаунта, таких как:
- Временная зона
- Аватар пользователя
- Электронная почта
- Включение/выключение двухэтапной аутентификации через электронную почту
В eXinakai
Ваши пароли шифруются и дешифруются ключом шифрования, выдаваемом при регистрации.
Без ключа шифра прочитать или изменить пароли невозможно. Так же при создании нового пароля
к нему можно добавить примету.
Если ключ шифрования передан верно, можно выполнять следующие действия с паролями:
- Создание паролей
- Чтение паролей и поиск по их приметам и коллекциям
- Обновление приметы или коллекции пароля
- Удаление паролей
Так же в eXinakai
действует удобная система коллекций для паролей. Она позволяет собрать набор неограниченного числа
паролей в одном месте, что позволяет лучше ориентироваться в менеджере, когда их не мало. Внутри системы можно:
- Добавлять коллекции
- Удалять коллекции
- Добавлять пароли к коллекции
- Менять коллекцию пароля
Еще имеется встроенный гибкий генератор паролей. Он работает даже без передачи верного ключа шифрования, просто войдя в аккаунт.
- Регистрация:
- Авторизация:
- Сброс пароля аккаунта:
- Изменение пароля аккаунта:
- Изменение настроек аккаунта:
- Страница двухэтапной аутентификации:
Этот проект лицензирован MIT лицензией.