Files
csm/migrations/017_device_health_scores.sql
iven 60ee38a3c2 feat: 新增补丁管理和异常检测插件及相关功能
feat(protocol): 添加补丁管理和行为指标协议类型
feat(client): 实现补丁管理插件采集功能
feat(server): 添加补丁管理和异常检测API
feat(database): 新增补丁状态和异常检测相关表
feat(web): 添加补丁管理和异常检测前端页面
fix(security): 增强输入验证和防注入保护
refactor(auth): 重构认证检查逻辑
perf(service): 优化Windows服务恢复策略
style: 统一健康评分显示样式
docs: 更新知识库文档
2026-04-11 15:59:53 +08:00

21 lines
1.0 KiB
SQL

-- 017_device_health_scores.sql: Device health scoring system
CREATE TABLE IF NOT EXISTS device_health_scores (
id INTEGER PRIMARY KEY AUTOINCREMENT,
device_uid TEXT NOT NULL REFERENCES devices(device_uid) ON DELETE CASCADE,
score INTEGER NOT NULL DEFAULT 0 CHECK(score >= 0 AND score <= 100),
status_score INTEGER NOT NULL DEFAULT 0,
encryption_score INTEGER NOT NULL DEFAULT 0,
load_score INTEGER NOT NULL DEFAULT 0,
alert_score INTEGER NOT NULL DEFAULT 0,
compliance_score INTEGER NOT NULL DEFAULT 0,
patch_score INTEGER NOT NULL DEFAULT 0,
level TEXT NOT NULL DEFAULT 'unknown' CHECK(level IN ('healthy', 'warning', 'critical', 'unknown')),
details TEXT,
computed_at TEXT NOT NULL DEFAULT (datetime('now')),
UNIQUE(device_uid)
);
CREATE INDEX IF NOT EXISTS idx_health_scores_level ON device_health_scores(level);
CREATE INDEX IF NOT EXISTS idx_health_scores_computed ON device_health_scores(computed_at);