🔐 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
This commit is contained in:
Apple
2026-01-10 10:43:14 -08:00
parent 0ebbb172f0
commit 6c426bc274
6 changed files with 313 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
#!/bin/bash
# Генерація NATS operator JWT та accounts
set -e
echo "🔑 Генерація NATS operator JWT..."
# Перевірка наявності nsc (NATS CLI для управління accounts)
if ! command -v nsc &> /dev/null; then
echo "⚠️ nsc не встановлено. Встановіть: https://github.com/nats-io/natscli"
echo " Або використайте Docker: docker run -it --rm natsio/nats-box"
exit 1
fi
# Створення operator
OPERATOR_NAME="DAARION"
echo "Створення operator: $OPERATOR_NAME"
nsc add operator "$OPERATOR_NAME"
# Створення system account
SYSTEM_ACCOUNT="SYSTEM"
echo "Створення system account: $SYSTEM_ACCOUNT"
nsc add account "$SYSTEM_ACCOUNT"
# Створення user accounts для сервісів
echo "Створення user accounts..."
nsc add user --account "$SYSTEM_ACCOUNT" memory-service
nsc add user --account "$SYSTEM_ACCOUNT" worker-daemon
nsc add user --account "$SYSTEM_ACCOUNT" matrix-gateway
echo ""
echo "✅ Operator та accounts створено!"
echo ""
echo "JWT файли знаходяться в: ~/.nsc/"
echo " Operator JWT: ~/.nsc/nats/$OPERATOR_NAME/$OPERATOR_NAME.jwt"
echo " System Account JWT: ~/.nsc/nats/$OPERATOR_NAME/accounts/$SYSTEM_ACCOUNT/$SYSTEM_ACCOUNT.jwt"
echo ""
echo "⚠️ Збережіть ці JWT в Vault або K8s Secrets!"