Skip to content

RBAC: role enum + require_role #33

Description

@richardmhope

Proposal

Replace the User.is_admin bool with a role enum (admin / analyst / auditor) and generalize require_adminrequire_role(...).

  • Auditor = read-only; analyst = triage but not user/destination admin; admin = full.

Cross-cutting

  • Migration per the _migrate_* pattern (backfill existing admins).

Acceptance

  • Auditor is blocked (403) from mutating routes; analyst can triage but not manage users/destinations.

From the PLAN.md roadmap to a SOC-consumable Marvin.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestpriority: highAddress first — availability/security impactsecuritySecurity / auth / data exposure

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions