Forwarded from prdx.so status (Felix Haffk)
Теперь используем JWT вместо самописных токенов
Что поменялось:
- Раньше при каждом запросе на сервер проверяли ваш токен через базу данных.
- Сервер спрашивал: "Этот токен валидный?" — база отвечала. Медленно
- Теперь токен содержит зашифрованную информацию о вас. Сервер проверяет подпись токена сам, без обращения к базе. Быстро
- Скоро на сайте появится менеджмент сессий, можно будет отзывать конкретную, или выходить только на одном устройтве, а не всех, как было раньше
Технически:
Архитектура:
• JWT RS256 с асимметричным шифрованием (RSA 2048)
• Валидация на уровне Istio ingress (stateless, нулевые задержки)
• Access token: 15 мин TTL, содержит claims (user_id, uuid)
• Refresh token: 30 дней TTL (если не рефрешить), хранится как SHA-256 хеш в PostgreSQL
Безопасность:
• Refresh token family tracking — отслеживаем цепочку токенов от одного
логина
• Reuse detection — при повторном использовании старого refresh токена
инвалидируем всё семейство
• IP и User-Agent логируются для каждого токена
• Публичные ключи для валидации: https://prdxso.dev/.well-known/jwks.json
Эндпоинты:
• GET /api/v1/auth/token — обмен OAuth2 кода на JWT
• POST /api/v1/auth/refresh — обновление access токена
• POST /api/v1/auth/revoke — отзыв токена
• POST /api/v1/auth/revoke-all — отзыв всех токенов пользователя
Инфраструктура:
• Istio RequestAuthentication провалидирует JWT
• EnvoyFilter извлекает user_id из claims → инжектит в header X-User-Id
• Backend сервисы читают X-User-Id напрямую, без дополнительных запросов
• Миграция: удалили таблицу access_tokens, добавили refresh_tokens
Производительность:
• Было: 3 network hops (Istio → auth-service → DB → auth-service → Istio →
backend)
• Стало: 1 network hop (Istio валидирует → backend)
Возможны баги в первые дни
Репортить можно в багтрекер
Please open Telegram to view this post
VIEW IN TELEGRAM
1🆒5
Forwarded from Apehum
This media is not supported in your browser
VIEW IN TELEGRAM
new prdx terms & conditions screen just dropped
🔥6
DD Tech
- Играли на Plasmo RP / PRDX.SO S1
- Быстро читаете и печатаете
- Часто онлайн
- Читали "Пиши, сокращай" и "Ясно, понятно"
- Любите технологии
- Умеете простым языком объяснять сложные вещи
Please open Telegram to view this post
VIEW IN TELEGRAM
🖕3