v0.5.166: /export→/v2/export редирект, экспорт только админам

This commit is contained in:
2026-06-22 17:46:52 +04:00
parent 24f1d5af77
commit 3d20c2a31d
19 changed files with 11 additions and 29 deletions
+4 -17
View File
@@ -31,7 +31,6 @@ const { authLimiter } = require('./src/middleware/rateLimit');
const { createSessionMiddleware } = require('./src/middleware/session');
const { aggregateCIDRs } = require('./src/validators');
const { CSP_DIRECTIVES } = require('./src/middleware/csp');
// const { createUiRouter } = require('./ui/index'); // ⛔ устарело, всё в v2
const app = express();
const PORT = process.env.PORT || 3000;
@@ -102,28 +101,16 @@ async function start() {
// JWKS endpoint для валидации токенов внешними сервисами (только в mock-режиме)
if (auth.jwksHandler) app.get('/.well-known/jwks.json', auth.jwksHandler);
// ⛔ Старый /export — удалён, всё в /v2/export
// app.get('/export', async (req, res) => { ... });
// ── OIDC-роуты (Keycloak) — активны ТОЛЬКО когда KC_CLIENT_ID задан ─────
// В mock-режиме (сейчас): заглушки, работает ui/routes/auth.js
// 🔮 В проде: задать KC_CLIENT_ID + KC_CLIENT_SECRET в .env
// ── OIDC-роуты (Keycloak) ───────────────────────────────────────────────
const { createRouter: createOidcRouter } = require('./src/routes/oidc');
app.use('/', createOidcRouter({ auth }));
// ⛔ Старый API v1 — удалён, всё в v2
// const { createApiRouter } = require('./src/api/index');
// app.use('/api/v1', createApiRouter({ auth, q }));
// ── UI-слой: SSR через EJS, данные из /api/v1/* ───────────────────────────
// Монтируется ПОСЛЕ /api/v1/ — не перехватывает API-запросы.
// ── V2 — тестовый роутер (Keycloak → IAM → вывод) ─────────────────
// Редирект корня на V2
// ── V2 — основной код ─────────────────────────────────────────────────
app.get('/', (req, res) => res.redirect('/v2/app'));
// Редирект /export → /v2/export (для обратной совместимости)
app.get('/export', (req, res) => res.redirect('/v2/export' + (req.originalUrl.includes('?') ? req.originalUrl.substring(req.originalUrl.indexOf('?')) : '')));
const { createV2Router } = require('./v2/server');
app.use('/v2', createV2Router());
// ⛔ Старый UI-слой — удалён, всё в v2
// app.use('/', createUiRouter({ auth, MOCK_USERS, authLimiter }));
// ── Общий обработчик ошибок ───────────────────────────────────────────────
// eslint-disable-next-line no-unused-vars