How RBAC Works in ABV
ABV implements role-based access control through organizations, projects, and roles: Hierarchy overview:- Organizations contain users and projects
- Users inherit organization-level roles by default
- Project-level roles can override organization defaults for specific projects
- API Keys are scoped to either a project or the entire organization
Organizations contain projects
Projects group observability data
Roles define permissions
- Owner: Complete control including billing and organization deletion
- Admin: Project configuration and user management (cannot delete organization)
- Member: Create and modify observability data (cannot change settings)
- Viewer: Read-only access to data and dashboards
- None: No default access (used when users need access to specific projects only)
Project-level overrides provide flexibility
API keys enable programmatic access
Roles and Permission Scopes
Role Overview
Owner
Owner
Admin
Admin
Member
Member
Viewer
Viewer
None
None
Detailed Permission Scopes
Organization-Level Scopes
Organization-Level Scopes
Project-Level Scopes
Project-Level Scopes
Managing Users
Adding Users to an Organization
Navigate to organization settings
Invite users by email
User accepts invitation
Changing User Roles
Any user with theorganizationMembers:CUD or projectMembers:CUD permission can modify user roles.
Organization-level role changes:
- Affect the user’s default permissions across all projects
- Can only assign roles equal to or lower than your own role
- Takes effect immediately across the organization
- Override the organization-level role for specific projects
- Useful for granting elevated access where needed or restricting access to sensitive projects
Managing Projects
Creating Projects
Verify permissions
projects:create permission (available to Owners and Admins).Create new project
Configure initial settings
Transferring Projects Between Organizations
Only users with theprojects:transfer_organization permission can transfer projects.
What gets transferred:
- All project data (traces, scores, datasets, prompts)
- All project configurations and settings
- API keys (remain valid without interruption)
- All features continue working during and after transfer
- Access control shifts to the new organization’s role assignments
- Users from the original organization lose access unless they’re members of the new organization
- Billing moves to the new organization
Project-Level Roles
By default, users inherit their organization-level role across all projects. Project-level roles provide fine-grained control when you need different permissions for different projects.When to Use Project-Level Roles
Multi-Team Organizations
Multi-Team Organizations
Environment Separation
Environment Separation
External Collaborators
External Collaborators
Customer Projects in Multi-Tenant Deployments
Customer Projects in Multi-Tenant Deployments
How Project-Level Roles Work
Inheritance: Users start with their organization-level role across all projects. Override: Assign a project-specific role to override the organization default for that project only. Independence: Project-level roles don’t affect other projects or the organization-level role. Complete isolation: Setting organization role to “None” with project-specific assignments ensures users only see the projects you’ve explicitly granted access to.API Keys and Programmatic Access
API keys provide programmatic access to ABV’s API for integrations, automation, and CI/CD pipelines.API Key Characteristics
Project-Scoped Access
Project-Scoped Access
Not Tied to Users
Not Tied to Users
Granular Access Control
Granular Access Control
- Tracing SDK integration (write traces, read prompts)
- Billing system (read-only metrics access)
- CI/CD pipeline (write traces to staging project only)
- External integrations (scoped to specific resources)
Audit Trail
Audit Trail
Managing API Keys
Creating API keys:- Requires
apiKeys:CUDpermission (Owner and Admin roles) - Specify the project the key should access
- Optionally name the key to indicate its purpose (“CI/CD Pipeline”, “Billing Integration”, etc.)
- Create a new API key for the same project
- Update your systems to use the new key
- Delete the old key after confirming the new key works
- Delete an API key to immediately revoke its access
- The key becomes invalid instantly across all ABV systems