Перейти к содержанию

auth-service (C4 Level 3)

Ответственность

  • Регистрация и login (email/password)
  • Guest token issuance
  • Telegram Login Widget verification
  • JWT access/refresh
  • Привязка telegram_iduser_id

Компоненты

flowchart TB
    subgraph auth_service [auth-service]
        API[Auth API Router]
        GuestHandler[Guest Token Handler]
        JWTService[JWT Service]
        TGVerifier[Telegram OAuth Verifier]
        UserRepo[User Repository]
        PasswordHasher[Password Hasher]
    end
    API --> GuestHandler
    API --> JWTService
    API --> TGVerifier
    API --> UserRepo
    UserRepo --> PG[(PostgreSQL)]
    PasswordHasher --> UserRepo
Компонент Описание
Auth API Router FastAPI routes /auth/*
Guest Token Handler UUID guest_id + signed token, TTL 24h
JWT Service HS256/RS256, access 15m, refresh 7d
Telegram OAuth Verifier HMAC check hash от Telegram Login
User Repository SQLAlchemy CRUD users
Password Hasher bcrypt

Данные

Таблица Ключевые поля
users id, email, password_hash, telegram_id, created_at
refresh_tokens id, user_id, token_hash, expires_at

События

  • Publish: user.registered

FR

FR-007, FR-008, FR-009, FR-021–FR-024