|
Some checks failed
CI / POS (WPF, Windows) (push) Waiting to run
CI / Backend (.NET 8) (push) Successful in 53s
CI / Web (React + Vite) (push) Successful in 42s
Docker API / Build + push API (push) Successful in 1m19s
Docker Web / Build + push Web (push) Successful in 35s
Docker API / Deploy API on stage (push) Failing after 38s
Docker Web / Deploy Web on stage (push) Successful in 13s
Завершающий пункт пакета фиксов по ролям/валидации/удалению. Обход: 1. /connect/token — IsActive + BelongsToLiveOrg + SuperAdmin bypass. 2. JWT cookie vs Bearer — все три AuthN-схемы переопределены в OpenIddictValidationAspNetCoreDefaults; cookie не активна для API. 3. X-Org-Override — фильтрует по IsInRole(SuperAdmin), подделать нельзя. 4. Tenant query filters — ITenantEntity и IOptionalTenantEntity подключаются через reflection, фильтр консистентен с tenant.context. 5. Smoke per-role — sidebar+RoleGuard за один проход покрывает все tenant-роуты; tenant-admin на /super-admin URL → описан risk + future fix. 6. Reset password / deactivate account — токены revoke в БД одним SQL. 7. Catch-22 для SuperAdmin платформы — он не Employee и не имеет OrganizationId, через текущие endpoint-ы deactivate невозможен. Findings разбиты на critical (закрыто этим пакетом), high/medium (не закрыто — будущая серия) и low (косметика). |
||
|---|---|---|
| .. | ||
| 24x7.md | ||
| architecture.md | ||
| audit-2026-04-27.md | ||
| audit-2026-05-06.md | ||
| audit-moysklad.md | ||
| forgejo.md | ||
| stage-access.md | ||
| stage-setup.md | ||
| telegram-bridge.md | ||