oxidecomputer / oxidecomputer/omicron
Audit log: silo-scoped audit log endpoint
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 572
- Forks
- 97
- Avg merge
- 2d 12h
- Merged PRs (30d)
- 96
Description
In #7339, the audit log can only be retrieved by fleet viewers through a system-level endpoint, /v1/system/audit-log. We will probably want to allow silo admins to retrieve an audit log scoped to their silo. That will require:
- A silo-scoped
/v1/audit-logendpoint accessible only to silo admins that does more or less what the system-level one does, pluswhere silo_id = <silo_id> - A
SiloAuditLogauthz resource alongsideAuditLogthat is tied to a specific silo - More robust logging of the silo an operation takes place in, specifically for login actions, which currently do not have an actor (see #8816)
It seems unlikely that we will want to expose this to all silo viewers, but it's conceivable.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the existing /v1/system/audit-log endpoint and the AuditLog authorization resource. Review #8816 for the login-operation logging detail, then define the silo-scoped endpoint, SiloAuditLog resource, silo filtering, and admin-only access. Done means the scope and behavior are agreed without exposing it to all silo viewers.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- api, authorization, backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100