// ═══════════════════════════════════════════════════════════════════════════════ // Конфигурация модуля аутентификации 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', };