PTah
64b942447b
fix: reconcile daily report active users count and list (0.3.5)
...
Normalize empty-session placeholders; sync stats with report body after ingest.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-23 14:41:47 +10:00
PTah
8b52c5fe3c
fix: show RDS break only on active or flap 302 events (0.3.4)
...
Hide Obryv RDS on 303 and on 302 after normal session end; keep for open sessions and RDG flap.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 20:15:47 +10:00
PTah
fbd213f323
chore: bump npm dompurify and vite for audit fixes (0.3.3)
...
dompurify 3.4.11, vite 6.4.3 — npm audit reports 0 vulnerabilities.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 20:13:43 +10:00
PTah
1b96a3b2c7
fix: RDG event label and prefix type filter (0.3.2)
...
Use event 302/303 instead of Win302 in RDG titles. Match event types by prefix in events list (e.g. rdg.connection).
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 20:07:22 +10:00
PTah
24ca87a47a
feat: RDG 302/303 display path labels and RDS session break (0.3.1)
...
Show RDS access via RDG-Comp or Haproxy-RDG-Comp, enable qwinsta/logoff on any RDG event with internal_ip.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 19:52:22 +10:00
PTah
4eb41608ea
chore: release SAC 0.3.0
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 16:07:54 +10:00
PTah
6e3f0ede4d
fix(backend): loginctl JSON parse and filter ephemeral SSH sessions (0.20.34)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 16:00:02 +10:00
PTah
fe818e9946
feat(frontend): terminate session button on Overview recent events (0.20.33)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 15:44:49 +10:00
PTah
5e26834e16
feat(frontend): git agent versions plate on Hosts list (0.20.32)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 15:17:47 +10:00
PTah
54c1d96933
fix(backend): non-login SSH and strict loginctl parse, SSH retry (0.20.31)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 10:54:56 +10:00
PTah
fc66b57e78
fix(frontend): match sessions panel height to agent config until loaded (0.20.30)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 10:31:38 +10:00
PTah
ad2425b0ff
fix(frontend): place host sessions panel beside agent config (0.20.29)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 10:22:20 +10:00
PTah
d848d94604
feat: host session list/terminate and event session actions (0.20.28)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 10:13:42 +10:00
PTah
ca0255e13b
fix(frontend): live refresh Events list via SSE (0.20.27)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 09:11:19 +10:00
PTah
d96d9d6333
fix(frontend): remove UTF-8 BOM from package.json — breaks vite build (0.20.26)
...
PostCSS config load failed with SyntaxError at position 0 on Linux deploy.
2026-06-21 20:50:13 +10:00
PTah
7397ec30cd
fix(winrm): resolve System32 path for cmd test on minimal PATH (0.20.25)
...
WinRM run_cmd(hostname) failed on hosts where System32 is not in PATH.
2026-06-21 20:49:01 +10:00
PTah
87ac1e09b0
fix: widen remote action log panel and wrap long WinRM output (0.20.22)
2026-06-21 11:30:37 +10:00
PTah
8adaf3bfd3
fix: WinRM update panel no longer blocks SAC navigation (0.20.21)
2026-06-21 11:07:28 +10:00
PTah
8a451a0c49
fix: alembic 022 down_revision must be 021 not 021_agent_git_release (0.20.20)
2026-06-21 11:04:07 +10:00
PTah
5635be1322
feat: background remote agent updates survive SAC navigation (0.20.19)
2026-06-21 11:01:26 +10:00
PTah
07b97bd111
fix: inline git test feedback and use form URLs (0.20.1)
...
Show git check result next to the button, scroll into view, and test unsaved repo URLs from the form.
2026-06-20 16:29:48 +10:00
PTah
f411d8f070
feat: git-based agent version reference and unified outdated badge (0.20.0)
...
SAC reads latest RDP/ssh-monitor versions from configured git repos for outdated detection, update targets, and settings test-git.
2026-06-20 16:25:53 +10:00
PTah
d820d941c1
fix: hide SSH/WinRM test feedback after 30s (0.12.1)
...
WinRM success message now auto-hides like SSH; both use 30 second timeout instead of 60.
2026-06-20 15:57:15 +10:00
PTah
cd2f27792d
feat: agent updates from SAC, poll config, SSH/WinRM fallback (0.12.0)
...
Add agent update settings, pending self-update via poll, desired config per host, and automatic or manual SSH/WinRM fallback when agents do not report agent.update events.
2026-06-20 15:52:10 +10:00
PTah
75f4c475df
feat: RDG qwinsta/logoff via WinRM on client workstation (0.11.6)
...
SAC resolves internal_ip to a registered Windows host and runs qwinsta/logoff synchronously over WinRM instead of queueing commands to the gateway agent.
2026-06-20 15:36:12 +10:00
PTah
2eb06acb5b
feat: SSH card UX, agent version sync, persistent ssh_admin_ok (0.11.5)
...
Silent SSH probe on host card open; manual test feedback auto-hides. Persist ssh_admin_ok in DB (migration 019). After agent update read version from host and refresh UI.
2026-06-20 01:01:56 +10:00
PTah
6fea8262fb
fix: skip invalid/unresolvable SSH targets before connect (0.11.2)
...
Do not use human display_name as SSH host; skip short names that do not resolve on SAC (ubabuba -> IPv4 only).
2026-06-20 00:39:29 +10:00
PTah
2e839e0b16
fix: SSH sudo without TTY for non-root Linux admin (0.11.1)
...
Probe commands run without sudo; privileged update uses sudo -S. Add SSH connect and Linux admin API tests.
2026-06-20 00:36:12 +10:00
PTah
cc8f50de89
feat: Linux SSH admin and remote ssh-monitor update (0.11.0)
2026-06-20 00:25:35 +10:00
PTah
279ea925a8
fix: WinRM try host.hostname first like Enter-PSSession (0.10.4)
2026-06-20 00:13:02 +10:00
PTah
c8e3eef9d7
fix: WinRM NTLM username normalize and hostname-first targets (0.10.3)
2026-06-20 00:10:52 +10:00
PTah
2fe492b06b
fix: WinRM read_timeout must exceed operation_timeout (0.10.2)
2026-06-20 00:06:26 +10:00
PTah
154ba3efc2
feat: Windows admin in Settings UI and WinRM host test (0.10.1)
...
Store domain admin in ui_settings (DB overrides env); qwinsta/logoff use effective config.
Host card: POST /hosts/{id}/actions/winrm-test via pywinrm.
2026-06-20 00:01:17 +10:00
PTah
df4c93d243
chore: release 0.10.0 (agent control plane phase 1)
...
Minor release: RDG flap, qwinsta/logoff queue, dashboard UI, agent poll API.
2026-06-19 23:42:03 +10:00
PTah
2aec488226
feat: RDG session flap rule, qwinsta/logoff queue and dashboard UI (0.9.13)
...
Detect 302→303 within 1–10s, Problem with 30s dedup, rdg_flap flag.
Agent command poll API, admin qwinsta/logoff from Overview. Migration 016.
2026-06-19 23:34:01 +10:00
PTah
b328d32f97
docs: agent control plane concept (v0.9.12)
...
Утверждённая концепция v0.7: RDG flap, qwinsta/logoff, обновления
агентов и desired config. Только документация и bump версии — runtime
без изменений.
2026-06-19 23:25:54 +10:00
PTah
55f047cd35
fix: Seaca push uses same lifecycle text as Telegram (0.9.11)
...
Reuse telegram templates for FCM title/body so agent start/restart
reasons reach mobile without Seaca app changes.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-17 11:35:17 +10:00
Andrey Lutsenko
3d36faa49d
fix(mobile): повторный enroll и удаление устройств в UI (0.9.10).
...
При повторной привязке Seaca переиспользуется запись device_uuid вместо INSERT.
Добавлены POST /devices/{id}/revoke и DELETE для полного удаления записи в настройках SAC.
2026-06-13 16:36:07 +10:00
PTah
563b836acc
feat: Seaca mobile API, enrollment, FCM push and admin UI (0.9.0)
...
Adds mobile device registration by admin codes, refresh tokens, push channel
in notification policy, and Settings section for managing Seaca clients.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-10 13:19:14 +10:00
PTah
e65daa8c3b
chore: sync frontend version.ts with API 0.8.3
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-10 09:11:41 +10:00
PTah
3053058cdf
feat: SAC 0.7.4 sidebar system stats block with UI toggle
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-02 09:15:15 +10:00
PTah
141fc44099
feat: SAC 0.7.3 custom error pages 401/403/404/429
...
Centered logo pages with event explanation and allowed actions; router
and apiFetch redirect to them on auth, permission, not-found, and rate-limit errors.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-01 11:06:21 +10:00
PTah
d3a337992c
feat: SAC 0.7.2 security hardening (rate limit, JWT DB check, DOMPurify)
...
Path traversal fix in SPA fallback, admin-only host delete, login rate limit
with 3 attempts and Telegram alert, JWT validated against active users in DB,
and DOMPurify for agent report HTML.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-01 11:04:14 +10:00
PTah
06a8ed8614
feat: events date filter and preserve list page in URL (SAC 0.7.1)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-01 10:32:24 +10:00
PTah
de29270a25
feat: SAC 0.7.0 display_name columns and event severity overrides
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-01 10:21:43 +10:00
PTah
8de5d14cfb
feat: SAC 0.6.0 user edit UI, login to dashboard, daily report timer sync
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-01 09:55:12 +10:00
PTah
dce5b88b2f
feat: move navigation to dashboard sidebar and bump SAC to 0.5.0
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-28 13:45:25 +10:00
PTah
b404747f8d
test: version constants without DB import
2026-05-27 13:21:02 +10:00
PTah
c657a65970
feat: v0.2.0 branding, healthz version, SSE dashboard live
...
Centralize APP_VERSION 0.2.0; /health and /healthz return version;
startup log line; UI title Security Alert Center v.0.2.0;
SSE /api/v1/stream/events for live dashboard counters.
2026-05-27 13:20:39 +10:00
PTah
69a232d08a
feat: backend ingest API, Docker Compose, Ubuntu install guide
...
- FastAPI: POST /api/v1/events, GET /health, JSON Schema validation
- PostgreSQL models, Alembic migration, bootstrap API key
- deploy/docker-compose.yml, .env.example
- docs/install-ubuntu-24.04.md, updated work-plan (agents first)
2026-05-26 20:21:31 +10:00