Skip to main content

Permissions

Revisium uses CASL-based declarative permissions at three access levels.

Access Levels

System Level

RoleCapabilities
SuperadminFull platform access — manage all organizations, projects, users

Organization Level

RoleCapabilities
AdminManage organization settings, members, all projects
MemberAccess projects, limited org management

Project Level

RoleCapabilities
AdminFull project access — schema, data, branches, endpoints, settings
EditorCreate/modify tables, rows, branches; commit changes
ViewerRead-only access — browse schemas, data, revisions

Permission Model

Permissions are attribute-based using CASL abilities:

  • Each role defines a set of allowed actions (read, create, update, delete) on subjects (project, table, row, branch, etc.)
  • Permissions are checked on every API call
  • The Admin UI adapts its interface based on the current user's permissions (e.g., hiding edit buttons for viewers)

Multi-Tenancy

Organizations provide complete isolation:

  • Users in one organization cannot access another organization's projects
  • Project-level roles are scoped within the organization
  • A user can have different roles in different projects