Безопасность
Микросервисная архитектура безопасности
Контур сервисов FastAPI, Keycloak, Redis, RabbitMQ, MinIO и PostgreSQL.
Микросервисная архитектура безопасности
1. Технологический стек
FastAPI— backend микросервисы.Keycloak— аутентификация, токены, IAM.PostgreSQL— транзакционные данные и служебные метаданные.Redis— кэш, сессии, rate-limit counters.RabbitMQ— очереди и асинхронные задачи.MinIO— хранение файлов, выгрузок, артефактов.
2. Сервисы
api-gatewayauth-service(Keycloak)ingestion-service(FastAPI)analytics-service(FastAPI)forecast-service(FastAPI)billing-service(FastAPI)notification-service(FastAPI)
3. Схема взаимодействия
Frontend (Nuxt)
|
v
API Gateway
|
+--> Keycloak (OIDC/OAuth2, JWT, MFA)
|
+--> FastAPI services (ABAC checks at API boundary)
| |
| +--> PostgreSQL
| +--> Redis
| +--> MinIO
|
+--> RabbitMQ <--> Workers (analytics/forecast/notifications)
4. Контроль безопасности на уровне сервисов
- Каждая ручка API проверяет JWT + ABAC-политику.
- Межсервисная авторизация:
client credentials+ mTLS. - Доступ к
MinIOчерез сервисные учетные записи и bucket-policy. - Критичные операции отправляют события в security-аудит.
5. Эксплуатационные требования
- Централизованные логи безопасности и трассировка запросов.
- Ротация секретов и ключей по регламенту.
- Backup/restore для
PostgreSQLи проверка восстановления. - Dead-letter очереди и retry-политики в
RabbitMQ.