Home
Ru2
Администратору кластера
Сервисы и репозитории
Сервисы в составе платформы
Специфические сервисы кластера управления
Модуль аутентификации (shturval-auth)
Менеджер сессий (session-manager)
Изменено 2026-07-01 в 19:41
Менеджер сессий (session-manager)
Раздел «Администратору кластера»: быстрый переход по подразделам
На этой странице
Expand
Collapse
О сервисе #
Параметр
Значение
Системное название chart
shturval-auth
Компонент
sh-session-manager
Назначение в кластере
HTTP API для списка активных пользовательских сессий и удаления сессии с каскадной очисткой OAuth-токенов.
Критический
Да
Неймспейс
shturval-backend
session-manager входит в Helm chart shturval-auth . Обычно компонент размещается рядом с authn-server , а backend API обращается к нему через SESSION_LIST_URL и SESSION_DELETE_URL.
Содержание #
Обзор
Архитектура
Установка / развёртывание
Диагностика
Жизненный цикл
Параметры сервиса
1. Обзор #
Назначение: поддерживать административные и пользовательские сценарии отзыва сессий после входа. Сервис предоставляет отдельное HTTP-приложение, которое вызывается backend и синхронно работает с Redis session store и связанным token store.
Создание сессии при login остаётся на стороне authn-server .
Функции #
Контур
Назначение
GET /sessions
Вывод активных пользовательских сессий.
DELETE /sessions/:sid
Удаление сессии и связанных токенов.
Redis store
Общее хранилище session/token данных с authn-server.
Сценарии инициации #
Событие
Инициатор
Эффект
List
backend API
JSON-список сессий.
Delete sid
Оператор платформы или автоматизация
Сессия и связанные token-записи удаляются из Redis.
Стартовая проверка
pod init
Недоступный Redis блокирует готовность workload.
Ограничения и следствия #
Ограничение
Следствие
Порт зафиксирован :8082
Порт нельзя сменить без совместимого изменения поставки.
Нет /health и /readyz
Пробы должны опираться на TCP/exec или другой утверждённый механизм.
Только Redis, без режима памяти
Redis обязателен для корректной работы.
CORS всегда AllowAllOrigins
Учитывайте сетевую поверхность API.
Место в цепочке управления #
Backend API направляет запросы управления активными входами пользователей в session-manager. authn-server создаёт сессии и использует общие интерфейсы хранилища session/token при login-flow.
Ключевые характеристики #
Характеристика
Значение
Бинарь
sh-session-manager
Порт процесса
0.0.0.0:8082
Совместное размещение
Sidecar в том же Deployment, что и authn (helm/auth/templates/dep-authn.yaml)
Отдельный Service
svc-session-manager
2. Архитектура #
Компонент
Роль
sh-session-manager
Gin-приложение ограниченных маршрутов.
Session Redis client
Чтение и удаление пользовательских сессий.
Token Redis client
Каскадная очистка OAuth-токенов при удалении SID.
Backend API
Вызывающий компонент платформы.
3. Установка / развёртывание #
Развёртывание задаёт Helm chart shturval-auth. Основное размещение — совместный pod с процессами auth и отдельный Service для внутреннего вызова из backend.
Параметры Redis и URL интеграции задаются через управляемые значения платформы и ShturvalServicePatch (SSP) .
4. Диагностика #
kubectl get svc -n " ${ NAMESPACE } "
kubectl logs -n " ${ NAMESPACE } " " ${ POD } " -c sh-session-manager --tail= 200
Симптом
Причина
Действие
HTTP 503 или timeout удаления SID
Недоступен token store
Восстановить Redis sentinel или credentials.
List пуст, хотя UI авторизует пользователей
Неверно указан URL session-manager в backend
Проверить SESSION_LIST_URL и SESSION_DELETE_URL.
Split-brain записей при нескольких pod
Недоступен sentinel или master endpoint
Проверить topology Redis и credentials.
Отсутствие стандартного health-route повышает требования к наблюдению: используйте утверждённые платформой проверки для конкретной установки.
5. Жизненный цикл #
Этап
Поведение
List
Сервис читает store и формирует ответ платформе.
Delete
Сервис последовательно удаляет сессию, затем связанную token-запись.
Start
Выполняется блокирующая проверка Redis-подключений.
6. Параметры сервиса #
Переменная
Назначение
SESSION_STORE_ADDR, SESSION_STORE_PASSWD
Redis-параметры данных сессий.
TOKEN_STORE_ADDR, TOKEN_STORE_PASSWD
Redis-параметры связанных token-записей.
STORE_MASTER, SENTINEL_PASSWD
Sentinel topology.
LOG_LEVEL
Уровень журналирования.
Ссылки backend SESSION_*_URL настраиваются в chart shturval-backend и должны указывать на Service session-manager из chart shturval-auth.