User Roles & Permissions

Chapter 4: User Roles & Permissions

This chapter explains how to manage user roles and permissions in the School Management System.

---

4.1 Understanding User Roles

Role Overview

The system supports 7 default user roles:

RoleDescriptionTypical Users
-----------------------------------
AdministratorFull system accessSchool admin, Principal
TeacherTeaching responsibilitiesTeachers, Tutors
AccountantFinancial managementFinance staff
LibrarianLibrary operationsLibrary staff
DriverTransport managementTransport staff
ParentGuardian accessParents/Guardians
StudentLimited self-serviceEnrolled students

---

4.2 Accessing Role Management

Navigation

  • Log in as Administrator
  • Go to Settings → Roles
  • Alternatively: Navigate to [your-domain]/roles

    ---

    4.3 Viewing Roles

    Role List Page

    The roles page displays:

    • Role name
    • Number of users in each role
    • Status (active/inactive)
  • Action buttons (Edit, Delete)
  • #### Default Roles (Cannot be Deleted)

    • Administrator
    • Teacher
    • Accountant
    • Librarian
    • Driver
    • Parent
  • Student
  • ---

    4.4 Understanding Permissions

    Permission Categories

    Permissions are organized by module:

    ModulePermissions
    ---------------------
    Studentsview, create, edit, delete, import, export
    Employeesview, create, edit, delete
    Feesview, create, edit, delete, collect, reports
    Examsview, create, edit, delete, marks entry
    Attendanceview, create, edit, reports
    Libraryview, create, edit, delete, issue, return
    Accountsview, create, edit, delete, reports
    Settingsview, edit

    Permission Matrix

    PermissionDescription
    -------------------------
    ViewAccess and view records
    CreateAdd new records
    EditModify existing records
    DeleteRemove records
    ImportBulk import data
    ExportExport data to files
    ReportsView and generate reports

    ---

    4.5 Editing a Role

    Step-by-Step Guide

    #### Step 1: Select Role to Edit

  • Navigate to Settings → Roles
    • Find the role you want to modify
  • Click the Edit button
  • #### Step 2: Modify Role Details

    FieldDescription
    --------------------
    Role NameName of the role (cannot be changed for default roles)
    DescriptionBrief description of role
    StatusActive or Inactive

    #### Step 3: Configure Permissions

    To enable a permission:

    • Find the module in the permissions list
    • Toggle the switch to enable
  • Or check the checkbox
  • Permission categories by role:

    Administrators - All permissions enabled Teachers - Teaching-related permissions Accountants - Finance and fee permissions Librarians - Library permissions Drivers - Transport permissions Parents - Limited view permissions Students - Minimal self-service permissions

    #### Step 4: Save Changes

    • Review all enabled permissions
  • Click Save Changes
  • Confirmation message will appear
  • ---

    4.6 Creating a Custom Role

    When to Create Custom Roles

    Create custom roles when you need:

    • Limited admin access (e.g., fee admin)
    • Specialized staff roles
  • Temporary access for contractors
  • Step-by-Step Guide

    #### Step 1: Create New Role

  • Go to Settings → Roles
  • Click Add New Role button
  • #### Step 2: Fill Role Details

    FieldDescriptionExample
    -----------------------------
    Role NameUnique nameFee Manager
    DescriptionRole descriptionManages all fee operations
    StatusActive/InactiveActive

    #### Step 3: Assign Permissions

    • Select permissions from the list
    • Enable only necessary permissions
  • Avoid giving unnecessary access
  • #### Step 4: Save Role

  • Click Save
  • The new role will appear in the roles list
  • ---

    4.7 Managing Users by Role

    Viewing Users in a Role

    #### Step 1: View Role Users

  • Go to Settings → Roles
    • Click on a role name
  • View list of users with this role
  • Role-Based User Counts

    RoleTypical Users
    ---------------------
    Administrator2-5 users
    Teacher20-100+ users
    Accountant2-5 users
    Librarian1-3 users
    Driver5-20 users
    ParentEqual to student count
    StudentTotal enrolled students

    ---

    4.8 Assigning Roles to Users

    Method 1: When Creating Users

    When adding a new user (student, employee), you can assign a role:

    • Fill in user details
    • Select role from dropdown
  • Complete user creation
  • Method 2: Editing Existing Users

    • Go to user list (Students, Employees, etc.)
    • Find the user
    • Edit user details
  • Change role assignment
  • ---

    4.9 Role Best Practices

    Security Recommendations

  • Principle of Least Privilege
  • - Only give minimum required permissions - Review permissions regularly

  • Separate Duties
  • - Don't give one person all permissions - Distribute responsibilities

  • Regular Audits
  • - Review role assignments quarterly - Remove unnecessary access

  • Documentation
  • - Document why each role has specific permissions - Keep records of permission changes

    Role Assignment Examples

    UserRolePermissions
    -------------------------
    PrincipalAdministratorFull access
    Head TeacherTeacherTeaching + Reports
    Class TeacherTeacherClass-specific access
    Fee CollectorAccountantFees + Reports
    ReceptionistCustomLimited student view
    Bus DriverDriverTransport only

    ---

    4.10 Troubleshooting

    Common Issues

    Problem: Can't access certain features

    • Check if your role has the required permission
  • Contact administrator to request access
  • Problem: Can't edit a user

    • Verify you have edit permission
  • Check if user has higher role (admin)
  • Problem: Deleted role still shows

  • Clear cache: php artisan cache:clear
  • Check if any users still assigned to role
  • ---

    4.11 Quick Reference

    Permission Access Matrix

    FeatureAdminTeacherAccountantParent
    ---------------------------------------------
    Student ManagementLimitedOwn child
    Fee Collection
    Marks EntryView
    Payroll
    ReportsLimitedLimited
    Settings

    ---

    Next Steps

  • Chapter 5: Authentication and login management
  • Chapter 7: Creating classes and sections
  • ---

    © 2026 School Management System. All rights reserved.