This commit is contained in:
2026-07-25 15:57:12 -05:00
parent 90d5b637ac
commit b20f14e32d
7 changed files with 60 additions and 26 deletions
+11 -5
View File
@@ -62,6 +62,7 @@ func hasAuditQuery(r *http.Request) bool {
"audit_range",
"audit_event",
"audit_customer",
"audit_user",
"audit_actor",
"audit_hostname",
"audit_package",
@@ -155,11 +156,16 @@ func auditFiltersFromRequest(r *http.Request) auditFilters {
default:
timeRange = "30d"
}
userFilter := query.Get("audit_user")
if strings.TrimSpace(userFilter) == "" {
// Preserve audit links created before the portal used "user" terminology.
userFilter = query.Get("audit_actor")
}
return auditFilters{
TimeRange: timeRange,
EventType: limitedFilter(query.Get("audit_event"), 100),
CustomerLabel: limitedFilter(query.Get("audit_customer"), 255),
Actor: limitedFilter(query.Get("audit_actor"), 255),
User: limitedFilter(userFilter, 255),
Hostname: limitedFilter(query.Get("audit_hostname"), 255),
PackageSlug: limitedFilter(query.Get("audit_package"), 100),
SourceIP: limitedFilter(query.Get("audit_ip"), 64),
@@ -224,7 +230,7 @@ func auditQuery(filters auditFilters, limit int) (string, []any) {
value string
}{
{"COALESCE(a.customer_label, '')", filters.CustomerLabel},
{"ae.actor", filters.Actor},
{"ae.actor", filters.User},
{"ae.hostname", filters.Hostname},
{"ae.package_slug", filters.PackageSlug},
{"ae.source_ip", filters.SourceIP},
@@ -260,7 +266,7 @@ func (s *Server) listAuditEvents(r *http.Request, filters auditFilters, limit in
if err := rows.Scan(
&record.EventType,
&record.CustomerLabel,
&record.Actor,
&record.User,
&record.Hostname,
&record.PackageSlug,
&record.SourceIP,
@@ -606,7 +612,7 @@ func validSHA256(value string) bool {
func (s *Server) audit(
ctx context.Context,
eventType string,
actor string,
user string,
authorizationID *uint64,
hostname string,
packageSlug string,
@@ -622,7 +628,7 @@ func (s *Server) audit(
`INSERT INTO audit_events
(event_type, actor, authorization_id, hostname, package_slug, source_ip, details)
VALUES (?, ?, ?, ?, ?, ?, ?)`,
eventType, actor, authID, hostname, packageSlug, sourceIP, details,
eventType, user, authID, hostname, packageSlug, sourceIP, details,
)
return err
}