Roles & Permissions
Understand the role hierarchy and access control
UserVote uses a role-based access control (RBAC) system to manage what users can see and do. This guide explains the different roles and their permissions.
Role Hierarchy
Roles are organized by power level:
| Role | Level | Description |
|---|---|---|
| SUPER_ADMIN | 100 | Full system access |
| TENANT_ADMIN | 80 | Full tenant access |
| EMPLOYEE | 50 | Staff member |
| USER | 10 | Regular customer |
Higher roles inherit all permissions from lower roles.
SUPER_ADMIN
The highest role with full control:
Permissions:
- All TENANT_ADMIN permissions
- System-wide settings
- Tenant management
- Database operations
- Security configurations
Typical Users:
- Platform owners
- System administrators
- Technical leads
TENANT_ADMIN
Full control within a tenant:
Permissions:
- All EMPLOYEE permissions
- User management (create, edit, disable)
- Role assignments
- Tenant settings
- Product creation/deletion
- Tier management
Typical Users:
- Company administrators
- Product owners
- Team leads
EMPLOYEE
Staff members with moderation abilities:
Permissions:
- View all products (including INTERNAL)
- Moderate ideas and comments
- Change idea statuses
- View customer information
- Add internal comments
- Access admin dashboard
Typical Users:
- Product managers
- Support staff
- Developers
USER
Regular customers:
Permissions:
- View PUBLIC products
- View RESTRICTED products (if granted)
- Submit ideas
- Vote on ideas
- Comment on ideas
- Manage own profile
Access Limitations:
- Cannot access admin dashboard
- Cannot see INTERNAL products
- Cannot moderate content
Assigning Roles
To change a user's role:
- Go to Admin → Users
- Find the user
- Click Edit
- Select new role from dropdown
- Click Save
Notes:
- Only higher roles can assign lower roles
- TENANT_ADMIN cannot create SUPER_ADMIN
- Role changes take effect immediately
Disabled Accounts
Accounts can be disabled:
Effect of Disabling:
- Cannot log in
- Cannot perform any actions
- Existing content remains
- Votes still count
Re-enabling:
- Go to user settings
- Toggle "Disabled" off
- User can log in again