33 lines
1.4 KiB
Go
33 lines
1.4 KiB
Go
package model
|
||
|
||
import (
|
||
core "git.yuntuo.hk/k2safe/orbit/model"
|
||
)
|
||
|
||
// AuditEvent 表示不可改写的管理审计,保留操作身份、原因和变更摘要。
|
||
// 对应表 orbit_audit_events;这是服务端持久化模型,不直接作为 API 响应。
|
||
type AuditEvent struct {
|
||
// Record 包含命名空间、记录标识、并发版本和 UTC 时间。
|
||
core.Record
|
||
// OperationID 管理操作的稳定身份,重复操作必须保留同一身份。
|
||
OperationID core.ID `db:"operation_id"`
|
||
// ActorID 经认证的操作主体标识,不能直接信任请求自报值。
|
||
ActorID string `db:"actor_id"`
|
||
// Action 执行的管理动作,例如暂停、取消或核查。
|
||
Action string `db:"action"`
|
||
// ResourceKind 关联资源类型;多态关联需要服务层额外校验。
|
||
ResourceKind string `db:"resource_kind"`
|
||
// ResourceID 关联资源标识,不能单独作为访问授权依据。
|
||
ResourceID core.ID `db:"resource_id"`
|
||
// Reason 操作原因或处理说明,需要保留审计信息。
|
||
Reason string `db:"reason"`
|
||
// Before 操作前的受控摘要 JSON,须脱敏。
|
||
Before core.JSON `db:"before"`
|
||
// After 操作后的受控摘要 JSON,须脱敏。
|
||
After core.JSON `db:"after"`
|
||
// EvidenceRef 业务核查证据的引用;为空表示没有附加引用。
|
||
EvidenceRef *string `db:"evidence_ref"`
|
||
}
|
||
|
||
func (AuditEvent) TableName() string { return "orbit_audit_events" }
|