PapaTramp
415d863b3b
feat: SAC daily reports from DB aggregation (notif-32)
...
- Aggregate report.daily.ssh/rdp from 24h ingest; job and systemd timer
- notify_daily_report bypasses NOTIFY_MIN_SEVERITY; ingest routes agent reports
- HTML templates, env SAC_DAILY_REPORT_*, docs and tests (56 cases)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-29 16:30:07 +10:00
PapaTramp
4167687dec
feat: notification cooldown dedup for events and problems (notif-31)
...
Store last notify time by dedup_key/fingerprint, gate dispatch before
channels; config SAC_NOTIFY_*_COOLDOWN_SEC, migration 008.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-29 16:24:01 +10:00
PapaTramp
1a70980920
feat: HTML Telegram templates for RDP/SSH events (notif-30)
...
Agent-style messages from event details, parse_mode HTML, templates for
login/sudo/RDG and problems; unit tests.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-29 16:21:40 +10:00
PapaTramp
ebb450be92
feat: global notification policy severity to channels (notif-22)
...
Singleton notification_policy table, NOTIFY_MIN_SEVERITY/CHANNELS env,
central dispatch gate, Settings policy UI, migration 007.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-29 16:19:26 +10:00
PapaTramp
9b177c145b
feat: SMTP email notification channel with UI and ingest
...
Migration 006, email config DB/env, smtplib sender, settings API,
Settings UI section, and dispatch on event/problem ingest.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-29 16:12:55 +10:00
PapaTramp
20fa7e2c27
feat: webhook notification channel with UI and ingest dispatch
...
Add webhook config (DB/env), JSON POST on events/problems, settings API,
Settings UI section, and notify_dispatch for multi-channel ingest.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-29 16:09:40 +10:00
PapaTramp
79a78dc7c9
feat: Telegram settings in DB with UI edit and test send
...
Store notification_channels (migration 004), effective config DB over env,
PUT/test API endpoints, Settings form, and pass db session into ingest notify.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-29 16:05:32 +10:00
PapaTramp
e0ba384705
feat: SAC Telegram settings view, notify_problem severity gate, exclusive docs
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-29 15:58:08 +10:00
PapaTramp
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
PapaTramp
d4bf6e536c
feat: host display_name в ingest, поиск хостов, UI и docs
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-28 11:49:10 +10:00
PapaTramp
108e1756c4
feat: live последние события на Dashboard; retention, health, runbook
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-28 11:29:31 +10:00
PapaTramp
fcf3da223c
test/docs: RDP agent.lifecycle ingest and 422 notes
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-28 10:34:23 +10:00
PapaTramp
c8f357007f
feat: dashboard top hosts/types, problems 24h, drill-down (d2-2)
...
- Extend /dashboards/summary; Events filters from query (hostname, severity)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-28 10:01:07 +10:00
PapaTramp
64b5ef297a
feat: problem rules v1 brute-force, privilege spike, host silence (d1-3)
...
- Threshold rules on ingest; heartbeat auto-resolves host silence
- Config thresholds in sac-api.env; unit tests
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-28 09:51:05 +10:00
PapaTramp
83f48dce97
fix: alembic 003 avoid :r bind param in fingerprint backfill SQL
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-28 09:47:35 +10:00
PapaTramp
a4a224b284
feat: Problems correlation fingerprint, count, last_seen (d1-2)
...
- Migration 003; windowed host+type+rule correlation on ingest
- GET /problems filters; GET /problems/{id} with event timeline; ack/resolve 409 guard
- Tests and SAC_PROBLEM_CORRELATION_WINDOW_MINUTES config
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-28 09:46:12 +10:00
PapaTramp
2b76ae8497
feat: ingest HTTP 201/409 for event_id idempotency
...
- Validate UUID format; log created/duplicate/rejected
- Tests for 201, 409, 422; update agent-integration and work-plan
- Docs: neutral IDE wording (no product-specific editor names)
2026-05-28 09:13:12 +10:00
PapaTramp
8995a34037
fix: faster sac-api restart (TimeoutStopSec, SSE cancel on shutdown)
2026-05-27 14:53:54 +10:00
PapaTramp
04301ab359
feat: host heartbeat status and dashboard metrics (2.2)
...
Track agent.heartbeat and report.daily.ssh per host; show online/stale
on Hosts UI; dashboard counters and SAC_HEARTBEAT_STALE_MINUTES config.
2026-05-27 13:36:17 +10:00
PapaTramp
b404747f8d
test: version constants without DB import
2026-05-27 13:21:02 +10:00
PapaTramp
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
PapaTramp
ea221db3c7
feat: Dashboard MVP with summary API and UI
...
Add GET /api/v1/dashboards/summary (24h events, open problems,
hosts, severity breakdown, recent events) and Vue /dashboard page.
2026-05-27 12:37:06 +10:00
PapaTramp
eeba3a704d
feat: Telegram notifications from SAC on ingest
...
Send Telegram alerts for high/critical events and new Problems.
Configurable via TELEGRAM_* env vars; ingest never fails on send errors.
2026-05-27 12:21:03 +10:00
PapaTramp
5fce00faae
feat: Problems API, ingest hook, and UI
2026-05-27 11:24:19 +10:00
PapaTramp
b19cdf2b47
fix: SPA fallback для /events при F5 (index.html)
2026-05-27 11:01:47 +10:00
PapaTramp
bdfc7016e6
feat: phase 1C JWT UI, events/hosts API, Vue frontend
2026-05-26 21:46:34 +10:00
PapaTramp
934a5a0c9c
fix: загрузка sac-api.env через pydantic, не EnvironmentFile systemd
2026-05-26 21:07:51 +10:00
PapaTramp
539126b75e
fix(deploy): конфиг в /opt/security-alert-center/config (sac:sac)
...
Убирает ошибку Permission denied при каталоге /etc root:root.
2026-05-26 20:59:44 +10:00
PapaTramp
9203af90d5
docs: native Ubuntu install as primary; systemd and nginx
...
- install-ubuntu-24.04-native.md (production) and -docker.md (alternative)
- deploy/systemd/sac-api.service, nginx/sac.conf.example, env.native.example
- deployment, README, INDEX, work-plan, TZ updated
2026-05-26 20:28:05 +10:00
PapaTramp
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
PapaTramp
4f3adc9429
docs: ТЗ v1.0, планы и схема SAC (фаза 0)
...
Security Alert Center — документация без кода приложения.
- TZ, архитектура, интеграция агентов (UseSAC)
- JSON Schema событий v1, deployment Ubuntu 24.04
- План работ, roadmap, multi-root workspace
2026-05-26 19:54:47 +10:00