Account service отвечает за учетные записи и пользовательский контекст системы. В текущей архитектуре это не отдельный «profile product», а системный сервис, который хранит и отдает данные о пользователях для платформенных сценариев.
Ключевая роль:
- модель пользователей системы;
- профильный и аккаунтный контекст;
- публичный API для клиентских запросов к своим данным;
- участие в связке identity, account и token flows.
Интерфейсы и связи:
- внешний протокол:
REST; - публичный API: да;
- использует:
Cloud service,API Gateway; - используется сервисами:
Identity service,Session Token service.
Разделы
- Код:
services/auth-platform/account-service/(planned) - Язык: Python (planned)
- Протокол: REST (public API)
- Приоритет: MEDIUM
- Владелец: Алексей Шалаев
- Статус: Planned
Ответственность
User Profiles
- Хранение PII (Personal Identifiable Information):
- First name, Last name
- Date of birth
- Avatar URL
- Отображение username (синхронизированного из Identity service)
Account Context
- Onboarding status (completed/pending steps)
- User preferences и settings
- Account metadata (created_at, last_login_at)
Public API
GET /api/v1/me— получить профиль текущего пользователяPATCH /api/v1/me— обновить профильGET /api/v1/users/:id— получить публичную информацию о пользователе
Event Consumption
Account service потребляет события от Identity service:
- identity.user.events → синхронизирует username в локальной БД
- identity.user.events (USER_DELETED) → удаляет профиль
Зависимости
Uses (downstream)
- Cloud service — связывает пользователей с облачными ресурсами
- API Gateway — получает auth context (User ID из JWT)
Used by (upstream)
- Identity service — публикует события для синхронизации username
- Session Token service — запрашивает user claims для включения в JWT
Data Stores (planned)
- PostgreSQL —
account_db(user_profiles, user_preferences) - Kafka — потребление событий от Identity service
Паттерны (planned)
- Event Sourcing — синхронизация username через Kafka events
- CQRS — разделение write (PATCH /me) и read (GET /me) моделей
- REST API — публичный API для клиентов
Связанные страницы
Фичи
- Profile Feature — продуктовое описание профилей
- Authentication Feature — Account service участвует в auth flow
Домены
- Identity Domain — источник username
Архитектура
- Data Flow / Event Flow — потребление событий Identity
- Integration Architecture / API Integrations — REST API контракты
Сервисы
- Identity service — публикует username events
- Session Token service — использует user claims из Account
- Cloud service — связывает пользователей с ресурсами
Инженерия
- Backend / Event-Driven Patterns — потребление Kafka events
- Backend / API Guidelines — REST API стандарты
Каталог
- Service Catalog — полный список сервисов