module
Version:
v0.0.0-...-b8c8d9e
Opens a new window with list of versions in this module.
Published: Feb 28, 2025
License: MIT
Opens a new window with license information.
README
¶
Drop Authorization Service 
Микросервис для аутентификации и авторизации пользователей.
Основные возможности
- Ролевая модель:
- Пользователи (
user
)
- Администраторы (
minor/major
)
- Фильтрация пользователей по параметрам
- Админ-токены с расширенными правами
- Авторизация через Telegram + JWT
- CRUD операции с пользователями
Стек
- Go
- PostgreSQL (pgx + sqlc)
- Redis (для хранения refresh-токенов)
- Docker
- gRPC + gRPC Gateway
Запуск сервиса
-
Клонируйте репозиторий:
$ git clone https://github.com/MAXXXIMUS-tropical-milkshake/drop-auth.git
$ cd drop-auth
-
Запустите сервис:
$ docker compose up
API
Метод |
Эндпоинт |
Требуемая роль |
Описание |
GET |
/health |
- |
Проверка доступности сервиса |
POST |
/v1/admin/init |
- |
Создание major админа (запрос только с localhost ) |
POST |
/v1/admin |
major admin |
Добавление minor админа по username (нужен jwt токен) |
DELETE |
/v1/admin/{user_id} |
major admin |
Удаление minor админа по user_id (нужен jwt токен) |
POST |
/v1/auth/login |
- |
Создание пользователя и выдача токенов (нужен telegram mini apps токен авторизации) |
POST |
/v1/auth/token/refresh |
- |
Ротация jwt токенов (нужен refresh token ) |
PATCH |
/v1/user |
- |
Обновление пользователя (нужен access token , где хранится id пользователя) |
GET |
/v1/users |
- |
Множественная фильтрация пользователей по различным параметрам |
GET |
/v1/admins |
any admin |
Множественная фильтрация админов по нескольким параметрам |
База данных
Схема базы данных находится на следующем ресурсе:
Прото-файлы
https://github.com/MAXXXIMUS-tropical-milkshake/drop-protos
Для более подробного ознакомления с API следует читать документацию (в docs
).
Directories
¶
Click to show internal directories.
Click to hide internal directories.