Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

security(audit): 工具级审计元数据不构成企业审计日志——无 actor/认证/审批事件、可篡改、不可检索

Cerrado
#101 11 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
35/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
rust

Línea de trabajo

Start by reading AuditMeta in src/tools/policy_domain/audit.rs:63-80 and the transcript overwrite path in src/transcript.rs:46-51 and src/atomic.rs. Inspect the plan approval handlers in src/http/handlers.rs:867-925, then map the missing actor, authentication, approval, integrity, retrieval, and export requirements. Done means the agreed audit model and interfaces cover those events without relying on transcript storage.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

场景 gap 单(okguitar 提报)· 优先级 P1 · 依赖:depends-on: #85(未终态时 keeper 自动 hold)

基线 HEAD = 9165b9a0。

Summary

现有 AuditMeta(src/tools/policy_domain/audit.rs:63-80)每工具调用记录 step_id/起止时间/args_hash/副作用分类/退出状态——但没有调用者身份、没有权限判定结果;且它随 transcript 存储,transcript 是整文件覆写(temp+rename,src/transcript.rs:46-51 → src/atomic.rs),非 append-only、无签名/哈希链——文件系统任意写者可改写历史。plan approve/reject 端点连 tracing 日志都没有(src/http/handlers.rs:867-925);认证失败无审计事件;唯一外送通道是 opt-in OTel tracing(feature-gated),与安全审计事件模型无关。

缺口清单

① actor 维度(谁);② 认证事件(登录失败/凭据轮换);③ 管理操作(DELETE 会话/改配置);④ 审批决策(谁批了哪个 plan);⑤ append-only + 哈希链防篡改;⑥ 按用户/时间检索 API;⑦ 导出(SIEM 对接)。

影响

数据外带/误删事故后无法回答「谁在何时用哪个 key 让智能体做了什么、谁批的计划」——等保/ISO27001/SOC2 审计直接不过。

建议

独立 append-only 审计流(actor + session + tool + policy 决定 + 审批事件),BLAKE3 哈希链(AuditMeta 已用 BLAKE3,基建现成),提供时间范围/用户检索与导出端点;actor 依赖租户配套单的身份注入。

Lenguaje dominante
Rust
Estrellas
4
Forks
0
Merge medio
5 h 32 min
PR fusionados (30 d)
7

Preparar el entorno

  • Incluye un Dockerfile o un archivo de Docker Compose
  • Sin plantilla de pull request
  • Sin guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de jeffkit/recursive

Todos los issues de jeffkit/recursive

Issues similares

Más issues de Rust

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.