v0.6.13: отладка — показ email/clientId/env в ошибке

This commit is contained in:
2026-06-15 10:55:13 +04:00
parent 7a4dd6f3e5
commit a1f8e5a71a
3 changed files with 12 additions and 3 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "ipwhitelist", "name": "ipwhitelist",
"version": "0.6.12", "version": "0.6.13",
"description": "IP WhiteList microservice for cloud provider", "description": "IP WhiteList microservice for cloud provider",
"main": "server.js", "main": "server.js",
"scripts": { "scripts": {
+1 -1
View File
@@ -9,7 +9,7 @@
// ═══════════════════════════════════════════════════════════════════════════════ // ═══════════════════════════════════════════════════════════════════════════════
module.exports = { module.exports = {
version: '0.6.12', version: '0.6.13',
// ── IAM ────────────────────────────────────────────────────────────────── // ── IAM ──────────────────────────────────────────────────────────────────
iamUrl: process.env.V2_IAM_URL || 'https://auth-api.ngcloud.ru/api/v1/auth/user', iamUrl: process.env.V2_IAM_URL || 'https://auth-api.ngcloud.ru/api/v1/auth/user',
+10 -1
View File
@@ -55,7 +55,16 @@ function resolveContext(req, res, next) {
// req.email = ТЕКУЩИЙ юзер (имперсонированный или реальный) // req.email = ТЕКУЩИЙ юзер (имперсонированный или реальный)
req.email = email; req.email = email;
req.clientId = isImpersonated ? impersonatedCompanyId : (activeClientId || clientId); req.clientId = isImpersonated ? impersonatedCompanyId : (activeClientId || clientId);
if (!req.clientId) return res.status(400).send('<h2>Ошибка</h2><p>Не удалось определить W-номер компании. Проверьте настройки IAM.</p><p><a href="/logout">Выйти</a></p>'); if (!req.clientId) return res.status(400).send(
'<h2>Ошибка</h2><p>Не удалось определить W-номер компании.</p>' +
'<p><b>email:</b> ' + email + '</p>' +
'<p><b>clientId:</b> ' + clientId + '</p>' +
'<p><b>activeClientId:</b> ' + activeClientId + '</p>' +
'<p><b>IMPERSONATION_ORIGINAL env:</b> ' + (process.env.IMPERSONATION_ORIGINAL || 'не задан') + '</p>' +
'<p><b>IMPERSONATION_TARGET env:</b> ' + (process.env.IMPERSONATION_TARGET || 'не задан') + '</p>' +
'<p><b>IMPERSONATION_COMPANY env:</b> ' + (process.env.IMPERSONATION_COMPANY || 'не задан') + '</p>' +
'<p><a href="/logout">Выйти</a></p>'
);
req.companyName = companyName || req.clientId; req.companyName = companyName || req.clientId;
req.isAdmin = (isAdmin && adminMode) || (!!ADMIN_EMAIL && email === ADMIN_EMAIL); req.isAdmin = (isAdmin && adminMode) || (!!ADMIN_EMAIL && email === ADMIN_EMAIL);
req.isImpersonated = isImpersonated; req.isImpersonated = isImpersonated;