diff --git a/package.json b/package.json index bd28f3c..d7087f6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ipwhitelist", - "version": "0.5.99", + "version": "0.6.0", "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 985c632..466c5c7 100644 --- a/v2/src/config/index.js +++ b/v2/src/config/index.js @@ -9,7 +9,7 @@ // ═══════════════════════════════════════════════════════════════════════════════ module.exports = { - version: '0.5.99', + version: '0.6.0', // ── IAM ────────────────────────────────────────────────────────────────── iamUrl: process.env.V2_IAM_URL || 'https://auth-api.ngcloud.ru/api/v1/auth/user', diff --git a/v2/src/user/index.js b/v2/src/user/index.js index fe74780..51cb1a4 100644 --- a/v2/src/user/index.js +++ b/v2/src/user/index.js @@ -39,6 +39,8 @@ function createUserRouter() { user: req.user || {}, includeDeleted, version: config.version, + isImpersonated: req.isImpersonated || false, + originalUserEmail: req.impersonatedBy ? req.email : null, }); } catch (e) { res.status(500).send('

Ошибка

' + e.message + '
Назад'); diff --git a/views/v2/user.ejs b/views/v2/user.ejs index a69df32..91e11a2 100644 --- a/views/v2/user.ejs +++ b/views/v2/user.ejs @@ -1,68 +1,164 @@ -V2 IP WhiteList - -
- V2 IP WhiteList v<%= version %> - <%= user.email %> <% if (user.isAdmin) { %>| ADMIN<% } %> - -
- <% companies.forEach(function(c) { %> <% }) %> -
- Выйти +
+ Выйти (<%= user.email %>) -
+ + +
+ + +<% if (typeof isImpersonated !== 'undefined' && isImpersonated) { %> +
+ ⚠️ Режим имперсонации — данные от имени <%= user.activeClientId || user.clientId %> + (вы: <%= user.originalUserEmail || user.email %>) +
+<% } %> + + +
-

Записей: <%= used %> из <%= limit %>

-
-
- - - -
+ + +
+
Белый список
+
+
+
<%= used %>
из <%= limit %>
+
+ + +
+
+
+ + +
+
+ + +
+ +
+
+
- - - <% if (entries.length === 0) { %> - - <% } %> - <% entries.forEach(function(e) { %> - - - - - - - - <% }) %> -
CIDRКомментарийКтоКогда
Нет записей
<%= e.value_cidr %><%= e.comment || '' %><%= e.created_by %><%= new Date(e.created_at).toLocaleString('ru') %> - <% if (e.deleted_at) { %> - удалено - <% } else { %> -
- - - -
-
- -
- <% } %> -
-

<%= includeDeleted ? 'Скрыть удалённые' : 'Показать удалённые' %>

- + + +
+ + + + + + <% if (entries.length === 0) { %> + + <% } %> + <% entries.forEach(function(e) { %> + + + + + + + + <% }) %> + +
Адрес / подсетьКомментарийДобавилДобавлена
Нет записей
<%= e.value_cidr %><%= e.comment || '' %><%= e.created_by %><%= new Date(e.created_at).toLocaleString('ru') %> + <% if (!e.deleted_at) { %> +
+
+ + + +
+
+ +
+
+ <% } else { %> + удалено + <% } %> +
+
+ +

+ <%= includeDeleted ? 'Скрыть удалённые' : 'Показать удалённые' %> +

+ +
+ +