- JWT middleware для FastAPI - Генерація/перевірка JWT токенів - Скрипти для генерації Qdrant API keys - Скрипти для генерації NATS operator JWT - План реалізації Auth TODO: Додати JWT до endpoints, NATS nkeys config, Qdrant API key config
73 lines
2.2 KiB
Markdown
73 lines
2.2 KiB
Markdown
# 🔐 План реалізації Auth
|
|
|
|
**Дата:** 2026-01-10
|
|
**Версія:** 1.0.0
|
|
|
|
---
|
|
|
|
## 📋 Компоненти для Auth
|
|
|
|
### 1. NATS (nkeys)
|
|
|
|
**Статус:** TODO
|
|
**Пріоритет:** Високий
|
|
|
|
**Що робити:**
|
|
- Генерація NATS operator JWT
|
|
- Створення system account
|
|
- Створення user accounts для сервісів
|
|
- Оновлення NATS конфігурації з auth
|
|
|
|
**Файли:**
|
|
- `infrastructure/auth/nats/generate-operator.sh` — генерація operator
|
|
- `infrastructure/auth/nats/create-accounts.sh` — створення accounts
|
|
- `infrastructure/kubernetes/nats/auth-secrets.yaml` — Secrets для JWT
|
|
|
|
---
|
|
|
|
### 2. Memory Service (JWT)
|
|
|
|
**Статус:** TODO
|
|
**Пріоритет:** Високий
|
|
|
|
**Що робити:**
|
|
- Додати JWT middleware до FastAPI
|
|
- Генерація JWT токенів для сервісів
|
|
- Перевірка JWT в Memory Service endpoints
|
|
- Створення service-to-service токенів
|
|
|
|
**Файли:**
|
|
- `services/memory-service/app/auth.py` — JWT middleware
|
|
- `services/memory-service/app/jwt_utils.py` — генерація/перевірка JWT
|
|
- `infrastructure/kubernetes/apps/memory-service/auth-secrets.yaml` — Secrets
|
|
|
|
---
|
|
|
|
### 3. Qdrant (API key)
|
|
|
|
**Статус:** TODO
|
|
**Пріоритет:** Середній
|
|
|
|
**Що робити:**
|
|
- Увімкнути API key auth в Qdrant
|
|
- Генерація API ключів для кожного сервісу
|
|
- Оновлення Memory Service для використання API key
|
|
- Оновлення worker-daemon для використання API key
|
|
|
|
**Файли:**
|
|
- `infrastructure/kubernetes/apps/qdrant/config.yaml` — Qdrant config з auth
|
|
- `infrastructure/auth/qdrant/generate-keys.sh` — генерація ключів
|
|
- `infrastructure/kubernetes/apps/qdrant/auth-secrets.yaml` — Secrets
|
|
|
|
---
|
|
|
|
## 🔄 Порядок реалізації
|
|
|
|
1. **Memory Service JWT** (найпростіше, найважливіше)
|
|
2. **NATS nkeys** (середня складність, важливо для безпеки)
|
|
3. **Qdrant API key** (найпростіше, але менш критично)
|
|
|
|
---
|
|
|
|
*Документ створено: 2026-01-10 19:30 CET*
|