Files
microdao-daarion/infrastructure/auth/AUTH-IMPLEMENTATION-PLAN.md
Apple 6c426bc274 🔐 Auth: базова реалізація JWT для Memory Service
- JWT middleware для FastAPI
- Генерація/перевірка JWT токенів
- Скрипти для генерації Qdrant API keys
- Скрипти для генерації NATS operator JWT
- План реалізації Auth

TODO: Додати JWT до endpoints, NATS nkeys config, Qdrant API key config
2026-01-10 10:43:14 -08:00

2.2 KiB

🔐 План реалізації 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