feat: add app-level authentication foundation
This commit is contained in:
@@ -378,35 +378,33 @@ UI-файлы:
|
||||
|
||||
Что уже есть реально:
|
||||
|
||||
- внешний `Basic Auth` на `nginx`
|
||||
- login screen и mock redirect flow
|
||||
|
||||
Что отсутствует:
|
||||
Что уже есть:
|
||||
|
||||
- session auth backend;
|
||||
- login endpoint;
|
||||
- logout endpoint;
|
||||
- current user endpoint
|
||||
|
||||
Отдельный конфликт:
|
||||
|
||||
- это не баг реализации, а отсутствие целого auth слоя;
|
||||
- login page пока не должна позиционироваться как production-ready flow.
|
||||
- `POST /api/auth/login`;
|
||||
- `POST /api/auth/logout`;
|
||||
- `GET /api/auth/session`;
|
||||
- protected page guard через backend session.
|
||||
|
||||
Простой итог:
|
||||
|
||||
- пока не интегрировать как реальный backend flow;
|
||||
- оставить как временный mock screen до отдельного решения по auth.
|
||||
- login уже перешел на live backend flow;
|
||||
- защищенные страницы проверяют server-side session;
|
||||
- `localStorage` больше не должен быть source of truth для auth.
|
||||
|
||||
## 5. Отдельные UI-vs-backend конфликты
|
||||
|
||||
### 5.1. Login vs Basic Auth
|
||||
|
||||
UI предполагает встроенный login, backend сейчас защищен внешним `Basic Auth`.
|
||||
Конфликт закрыт. UI использует встроенный login, backend перешел на app-level session auth.
|
||||
|
||||
Решение:
|
||||
|
||||
- не делать вид, что login уже рабочий;
|
||||
- отложить интеграцию login до отдельного auth этапа.
|
||||
- использовать `POST /api/auth/login`, `POST /api/auth/logout`, `GET /api/auth/session`;
|
||||
- хранить auth state в `HttpOnly` cookie;
|
||||
- использовать `localStorage` только как UI mirror для display state и не считать его source of truth.
|
||||
|
||||
### 5.2. Agent draft/edit lifecycle
|
||||
|
||||
|
||||
Reference in New Issue
Block a user