fix: IAM баги после ревью

- ui/routes/auth.js: POST /login-token сделан async (был await без async)
- ui/routes/auth.js: IAM enrichment только при auth.isOidc (не в mock-режиме)
- src/auth.js: fetchIamUser, switchProfile возвращаются из initAuth()
- src/routes/oidc.js: auth.fetchIamUser вместо require('../auth') (устранение циклической зависимости)
- ui/routes/auth.js: auth.fetchIamUser вместо require
- tests/api-crud.sh: удалён хардкоженный prod-токен, токен только через аргумент
This commit is contained in:
2026-06-04 15:08:40 +03:00
parent a8a07fe019
commit bbcda90378
6 changed files with 110 additions and 27 deletions
+3
View File
@@ -108,6 +108,9 @@ async function initAuth() {
DEV_SECRET: devSecret,
// JWKS endpoint (только в mock-режиме)
jwksHandler: !isOidc ? (req, res) => res.json(mockJwks) : null,
// IAM API хелперы
fetchIamUser,
switchProfile,
};
}
+1 -2
View File
@@ -57,8 +57,7 @@ function createRouter({ auth, doubleCsrfProtection, generateCsrfToken, authLimit
// Пытаемся обогатить через IAM API
try {
const { fetchIamUser } = require('../auth');
const iamData = await fetchIamUser(accessToken);
const iamData = await auth.fetchIamUser(accessToken);
req.session.user = {
email: iamData.email,
clientId: iamData.clientId,