2.8 KiB
2.8 KiB
IAM — переменные окружения
Дата: 2026-06-17 Путь:
src/config.js,v2/src/config/index.js
IAM_API_URL (основная, приоритет выше)
Где используется: src/config.js → src/auth.js (fetchIamUser, switchProfile)
Формат: https://auth-api.ngcloud.ru (без /api/v1)
Код добавляет /api/v1/auth/user автоматически.
Назначение: получение профилей пользователя, переключение компании.
Дефолт: https://auth-api.ngcloud.ru
Пример:
- IAM_API_URL=https://auth-api.ngcloud.ru
- Фактический путь: https://auth-api.ngcloud.ru/api/v1/auth/user
IAM_API_BASE (запасная, приоритет ниже)
Где используется: v2/src/config/index.js → v2/server.js (тестовые страницы)
Формат: https://lk-api-gateway.ngcloud.ru/api/v1/iam
Код НЕ добавляет /api/v1, путь должен быть полный.
Назначение: тестовые страницы (/v2/iam-gateway-test), заглушка пока IAM не починят.
Дефолт: берётся из IAM_API_URL
Пример:
- IAM_API_BASE=https://lk-api-gateway.ngcloud.ru/api/v1/iam
- Фактический путь: https://lk-api-gateway.ngcloud.ru/api/v1/iam/auth/user
Приоритет в src/config.js
process.env.IAM_API_URL || process.env.IAM_API_BASE || 'https://auth-api.ngcloud.ru'
- IAM_API_URL — явно задан (auth-api)
- IAM_API_BASE — запасной (lk-api-gateway)
- Дефолт — auth-api.ngcloud.ru
Когда что использовать
| Ситуация | Какая переменная | Какой API |
|---|---|---|
| Обычная работа (логин, CRUD, компании) | IAM_API_URL | auth-api.ngcloud.ru |
| Имперсонация (админ работает от имени юзера) | IAM_API_BASE | lk-api-gateway.ngcloud.ru |
| Когда IAM починят | IAM_API_URL | auth-api.ngcloud.ru (везде) |
Текущий статус
- auth-api.ngcloud.ru — не отдаёт profiles таргета при имперсонации (баг разработчиков IAM)
- lk-api-gateway.ngcloud.ru — работает, отдаёт profiles таргета, НО не принимает токен от Keycloak whitelist (только от ЛК)
- Когда IAM починят: удалить IAM_API_BASE из кода и Nubes UI, оставить только IAM_API_URL
Nubes UI (текущие переменные)
- IAM_API_URL=https://auth-api.ngcloud.ru
- IAM_API_BASE=https://lk-api-gateway.ngcloud.ru/api/v1/iam