v0.5.171: IAM debug страницы только для canAdmin

This commit is contained in:
2026-06-22 18:25:12 +04:00
parent 4c764eb794
commit ff1f195a2d
3 changed files with 17 additions and 13 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "ipwhitelist",
"version": "0.5.170",
"version": "0.5.171",
"description": "IP WhiteList microservice for cloud provider",
"main": "server.js",
"scripts": {
+15 -11
View File
@@ -43,15 +43,16 @@ function createV2Router() {
res.redirect('/login?returnTo=' + encodeURIComponent('/v2/app'));
});
// ── GET /v2/iam — отладка: показать IAM-данные из сессии ────────────
router.get('/iam', (req, res) => {
// ── GET /v2/iam — отладка: IAM-данные из сессии (только админ) ────
router.get('/iam', resolveContext, (req, res) => {
if (!req.canAdmin) return res.status(403).send('Доступ запрещён');
const u = req.session && req.session.user;
if (!u) return res.redirect('/v2/login');
res.send(debugPage(u, config.version));
});
// ── GET /v2/iam_response — сырой ответ IAM ─────────────────────────
router.get('/iam_response', async (req, res) => {
// ── GET /v2/iam_response — сырой ответ IAM (только админ) ─────────
router.get('/iam_response', resolveContext, async (req, res) => {
if (!req.canAdmin) return res.status(403).send('Доступ запрещён');
const token = req.session && req.session.token;
if (!token) return res.redirect('/v2/login');
try {
@@ -64,8 +65,9 @@ function createV2Router() {
}
});
// ── GET /v2/iam_response_test — IAM test стенд ──────────────────────
router.get('/iam_response_test', async (req, res) => {
// ── GET /v2/iam_response_test — IAM test стенд (только админ) ─────
router.get('/iam_response_test', resolveContext, async (req, res) => {
if (!req.canAdmin) return res.status(403).send('Доступ запрещён');
const token = req.session && req.session.token;
if (!token) return res.redirect('/v2/login');
try {
@@ -77,8 +79,9 @@ function createV2Router() {
}
});
// ── GET /v2/iam_response_dev — IAM dev стенд ────────────────────────
router.get('/iam_response_dev', async (req, res) => {
// ── GET /v2/iam_response_dev — IAM dev стенд (только админ) ───────
router.get('/iam_response_dev', resolveContext, async (req, res) => {
if (!req.canAdmin) return res.status(403).send('Доступ запрещён');
const token = req.session && req.session.token;
if (!token) return res.redirect('/v2/login');
try {
@@ -90,8 +93,9 @@ function createV2Router() {
}
});
// ── GET /v2/iam-gateway-test — сравнение auth-api vs lk-api-gateway ──
router.get('/iam-gateway-test', async (req, res) => {
// ── GET /v2/iam-gateway-test — сравнение API (только админ) ────────
router.get('/iam-gateway-test', resolveContext, async (req, res) => {
if (!req.canAdmin) return res.status(403).send('Доступ запрещён');
const token = req.session && req.session.token;
if (!token) return res.redirect('/v2/login');
+1 -1
View File
@@ -8,7 +8,7 @@
// ═══════════════════════════════════════════════════════════════════════════════
module.exports = {
version: '0.5.170',
version: '0.5.171',
// ── IAM ──────────────────────────────────────────────────────────────────
iamUrl: process.env.V2_IAM_URL || 'https://auth-api.ngcloud.ru/api/v1/auth/user',