diff --git a/package.json b/package.json index f6a01b8..e2587bf 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ipwhitelist", - "version": "0.5.65", + "version": "0.5.66", "description": "IP WhiteList microservice for cloud provider", "main": "server.js", "scripts": { diff --git a/v2/src/config/index.js b/v2/src/config/index.js index d39fba7..ebb68d9 100644 --- a/v2/src/config/index.js +++ b/v2/src/config/index.js @@ -1,8 +1,46 @@ -// Конфигурация V2 — умолчания, переопределяются через V2_* env +// ═══════════════════════════════════════════════════════════════════════════════ +// Конфигурация модуля аутентификации V2 +// ═══════════════════════════════════════════════════════════════════════════════ +// +// СЕЙЧАС (ТЕСТ): умолчания указывают на наш тестовый Keycloak на ВМ. +// KC на ВМ (italo.kube5s.ru) — НЕ production. +// IAM НЕ доверяет токенам от этого KC → login() падает с ошибкой. +// +// Чтобы работало сейчас: зайти на ВМ, в браузере открыть /v2/login. +// Или задать V2_KC_* env на production-платформе (см. ниже). +// +// ПРИ ПЕРЕХОДЕ НА PRODUCTION KEYCLOAK: +// 1. В Keycloak (keycloak.nubes.ru/realms/cloud) добавить redirect URI: +// https://whitelist.nodejsk8s.services.ngcloud.ru/v2/callback +// (клиент: naeel-whitelist-managed) +// +// 2. Задать переменные окружения на платформе (Nubes UI → env): +// V2_KC_BASE_URL=https://keycloak.nubes.ru/realms/cloud +// V2_KC_CLIENT_ID=naeel-whitelist-managed +// V2_KC_CLIENT_SECRET=<секрет из Keycloak admin> +// V2_APP_URL=https://whitelist.nodejsk8s.services.ngcloud.ru +// V2_IAM_API_URL=https://auth-api.ngcloud.ru +// +// 3. Редеплой. +// +// После этого login() будет: production-KC → токен → IAM → полный профиль. +// +// Приоритет: process.env.V2_* → умолчания (тестовый KC на ВМ). +// ═══════════════════════════════════════════════════════════════════════════════ + module.exports = { + // Keycloak — ТЕСТОВЫЙ (наш на ВМ). Заменить на production через V2_KC_BASE_URL. kcBaseUrl: process.env.V2_KC_BASE_URL || 'https://italo.kube5s.ru/realms/ipwhitelist', + + // client_id — ТЕСТОВЫЙ. Заменить через V2_KC_CLIENT_ID. kcClientId: process.env.V2_KC_CLIENT_ID || 'ipwhitelist', + + // client_secret — ТЕСТОВЫЙ. Заменить через V2_KC_CLIENT_SECRET. kcClientSecret: process.env.V2_KC_CLIENT_SECRET || '40bpIZvumq6jttIB5QtTLcl9AJvAHxlw', + + // IAM API — production. Токен от тестового KC IAM не примет (ошибка 401). iamUrl: process.env.V2_IAM_API_URL || 'https://auth-api.ngcloud.ru', + + // URL нашего приложения — production. appUrl: process.env.V2_APP_URL || 'https://whitelist.nodejsk8s.services.ngcloud.ru', };