Role-Based Access Control
Role-Based Access Control
Learn how to control user access through customizable roles that grant specific permissions, ensuring employees can access only the features and data relevant to their responsibilities.
Overview
Role-Based Access Control (RBAC) in Shifts allows administrators to assign users to specific roles that determine what they can see and do in the system. This ensures employees have access to the tools they need while maintaining data security and operational integrity.
Understanding Roles and Permissions
Role Types
The Shifts platform includes several built-in roles with predefined permissions:
- System Administrator - Complete access to all features and settings across all businesses
- Business Administrator - Full control of settings for their assigned business
- Location Manager - Management capabilities for specific locations
- Supervisor - Oversight of employee schedules and attendance
- Employee - Basic access to personal schedules and time tracking
Organizational Roles
Beyond system roles, you can create organizational roles that reflect your companyβs structure:
- Department Manager
- Team Lead
- Shift Coordinator
- Trainee
Each organizational role can have custom permission sets and report to defined roles in the hierarchy.
Setting Up Role-Based Access
Accessing Role Management
- Navigate to Admin Dashboard β Security β Roles & Permissions
- The roles dashboard displays existing roles and allows you to create new ones
Creating Custom Roles
- Click Create New Role
- Enter a descriptive name for the role
- Select the parent role in the hierarchy (optional)
- Configure permissions for the new role
- Save your changes
Assigning Permissions to Roles
Each role can be granted specific permissions across different areas:
- Schedule Management - Create, edit, or view schedules
- Employee Data - Access to personal information and work history
- Time & Attendance - Approve time records, manage exceptions
- Reporting - Access to different types of reports and analytics
- Administration - System configuration capabilities
Permission Levels
For each feature, you can set one of these permission levels:
- No Access - Feature is hidden from the user
- View Only - User can see but not modify data
- Edit - User can view and modify existing data
- Create/Delete - User has full control including adding and removing data
- Approve - User can review and approve/reject requests
Assigning Roles to Users
- Go to Admin Dashboard β Users
- Select a user to edit
- In the Roles & Permissions section, assign one or more roles
- For location-specific roles, select the applicable locations
- Save the changes
Role Inheritance and Hierarchy
Roles in Shifts can inherit permissions from parent roles:
- Child roles automatically receive all permissions from their parent roles
- Additional permissions can be added to specialized roles
- If a user has multiple roles, they receive all permissions from each role
Managing Multi-Location Access
For businesses with multiple locations:
- Navigate to Admin Dashboard β Users β select a user
- In the Locations tab, assign the user to specific locations
- For each location, you can assign a different organizational role
- Save the changes
Permission Conflicts and Resolution
When users have multiple roles or location assignments:
- Permissions are additive - the highest level of access is granted
- Location-specific restrictions take precedence over global permissions
- System-wide roles override location-specific restrictions
Best Practices
For optimal security and usability:
- Follow the principle of least privilege - Give users only the permissions they need
- Create role templates for common job functions to ensure consistency
- Audit role assignments quarterly to verify appropriate access
- Document your role structure for training and compliance purposes
- Test new roles with limited users before wide deployment
Related Resources
This article should be updated when:
- New system or organizational roles are added
- Permission categories or levels change
- The role management interface is modified
- Inheritance rules or conflict resolution logic changes