v0.5.14 — вход по токену, JWKS в mock-режиме, production deploy docs

- POST /login-token: принимает реальный JWT (не только clientId)
- auth.js: verifyAnyToken — mock + JWKS (Keycloak Nubes) одновременно
- auth.js: JWKS предзагружается всегда, даже в mock-режиме
- devops-deploy.md: полная production-инструкция для DevOps
- .env.example: production-ready шаблон
- README.md: актуальный (v0.5.13, архитектура, тесты, ссылки)
- .gitignore: очищен от дубликатов
This commit is contained in:
2026-06-03 12:37:10 +03:00
parent 22beaa86a3
commit 38c7adf25d
7 changed files with 396 additions and 143 deletions
+9 -7
View File
@@ -2,15 +2,17 @@
DB_HOST=localhost
DB_PORT=5432
DB_NAME=ipwhitelist
DB_USER=super
DB_PASS=сменить_пароль
DB_USER=ipwhitelist
DB_PASS=<openssl rand -base64 24>
DB_SSLMODE=disable
# ── Режим разработки (true = без Keycloak, mock-логин) ──
# ── Режим разработки ──
# true = mock-логин (без Keycloak, для тестов)
# false = OIDC SSO через Keycloak (ОБЯЗАТЕЛЬНО в production)
DEV_MODE=true
DEFAULT_LIMIT=15
# ── Сессия (сменить на случайные строки) ──
# ── Сессия (сгенерировать: openssl rand -base64 32) ──
SESSION_SECRET=сменить_на_случайную_строку
CSRF_SECRET=сменить_на_случайную_строку
@@ -20,8 +22,8 @@ PORT=3001
# ── Администратор (clientId) ──
ADMIN_CLIENT_ID=WZ01112
# ── Keycloak (оставить пустым пока нет OIDC) ──
# KC_CLIENT_ID=
# KC_CLIENT_SECRET=
# ── Keycloak / OIDC (ЗАПОЛНИТЬ при DEV_MODE=false) ──
# KC_CLIENT_ID= # ID зарегистрированного OIDC-клиента в Keycloak
# KC_CLIENT_SECRET= # секрет клиента
# KC_BASE_URL=https://keycloak.nubes.ru/realms/cloud
# APP_URL=https://ваш-домен.ru