43 lines
2.6 KiB
Markdown
43 lines
2.6 KiB
Markdown
# Вопросы девопсам — IPWhiteList
|
||
|
||
## 1. Аутентификация (OIDC/Keycloak)
|
||
|
||
**Как выглядит токен когда пользователь принадлежит нескольким компаниям?**
|
||
В ТЗ п. 3.1 сказано «поддерживается сценарий когда пользователь принадлежит нескольким компаниям». В текущем токене один `ClientID = WZ01325`. Если компаний несколько — это массив? Отдельный claim? Или всегда разные учётки?
|
||
|
||
**Какие claims реально приходят в токене?**
|
||
Мы видели в HAR-файле: `ClientID`, `company_id`, `company_name`, `email`, `login`, `groups: null`, `realm_access.roles: null`. Это окончательный список? `groups` всегда `null` или при каких-то условиях заполняется?
|
||
|
||
**Как определяется роль администратора?**
|
||
Сейчас проверяем `clientId === ADMIN_CLIENT_ID (WZ01112)`. В ТЗ написано «и отдельный чек-бокс». Это флаг/роль `admin` в Keycloak? В каком claim?
|
||
|
||
**JWKS URL для прода?**
|
||
Для dev генерим RSA-пару локально. Для прода: это `https://keycloak.nubes.ru/realms/cloud/protocol/openid-connect/certs` или другой?
|
||
|
||
**Redirect URI для Keycloak?**
|
||
Нужно зарегистрировать `https://white.nodejsk8s.dev.nubes.ru/callback` как redirect_uri?
|
||
|
||
## 2. Развёртывание Node.js
|
||
|
||
**Почему Node.js не деплоится?**
|
||
PostgreSQL развернулся, Node.js — «нет ресурсов для аллоцирования». Это ограничение платформы? Другой тип ресурсной группы?
|
||
|
||
**Формат `jsonEnv`?**
|
||
Поле `jsonEnv` ругается «Invalid JSON String». Какой точный формат?
|
||
|
||
**Переменные для прода:**
|
||
- `NODE_ENV=production`
|
||
- `KC_CLIENT_ID` + `KC_CLIENT_SECRET`
|
||
- `SESSION_SECRET` — случайная строка
|
||
- `DATABASE_URL` — строка подключения
|
||
|
||
Всё через jsonEnv или иначе?
|
||
|
||
## 3. Сеть
|
||
|
||
**Кто потребитель `/export`?**
|
||
По ТЗ — без авторизации, ограничение по IP. Какие IP/подсети?
|
||
|
||
**Ingress/CSP:**
|
||
На проде не работают inline onclick/onchange. Ingress добавляет CSP? Можно ослабить или делать на event delegation?
|