Skip to content

Роль не перепроверяется после открытия страницы (stale RBAC) #94

Closed

Description

@vladcheck

Что

setupRbac вызывается один раз в initialize: смена роли/выход без переоткрытия страницы оставляет старые кнопки. Нужен ли слушатель сессии или перепроверка в обработчиках.

Найдено мозгоштурмом RBAC.

Part of #29

Definition of Done

  • Базовый Controller: общая реализация showError(String) поверх абстрактного getErrorLabel(); новый showError(Throwable) перехватывает 401/403 в session.clear() + goToLoginOnce(); хук interceptAuthFailure() (default true).
  • Все 8 контроллеров мигрированы: приватные пары showError/hideError удалены, добавлен однострочный getErrorLabel, места catch/setOnFailed передают исключение, а не строку. Проверочные сообщения не тронуты.
  • LoginFormController перекрывает interceptAuthFailure() в false (неверный пароль не вызывает выход).
  • Navigator.goToLoginOnce() с once-флагом против N параллельных 403.
  • Тесты: 401/403 ведут на экран входа с очищенной сессией (синхронный и асинхронный пути); logout съедает ошибку без мелькания; неверный пароль остаётся на форме входа; весь сьют зелёный; spotless и checkstyle чистые.
  • Соглашения: русские названия, Allure-разметка, ожидание только через WaitForAsyncUtils.

Metadata

Metadata

Assignees

Labels

ready-for-agentFully specified, ready for an AFK agent

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions