Skip to content

Permission Keys

Permissions are organized into Admin Portal and User Portal groups. Each permission key controls access to a specific feature area.

These permissions control what an admin-role user can access within the Admin Portal:

Permission KeyControls
admin_portal_accessAbility to log into the Admin Portal
admin_dashboardDashboard overview
admin_usersUser management (create, edit, delete users)
admin_agreementsAgreement management
admin_mediaMedia library
admin_volunteersVolunteer management
admin_studentsStudent and curriculum management
admin_subscriptionsSubscription plans, credit packs, add-ons, and subscribers
admin_sessionsSession events and registrations
admin_inventoryInventory and product management
admin_billingBilling, invoices, and payment tracking
admin_notificationsNotification management
admin_audit_logAudit log and error log viewing
admin_reportsReports and analytics
admin_settingsSystem preferences and role permission configuration

These permissions control what features are available in the User Portal:

Permission KeyControls
user_volunteersVolunteer timeslot browsing and registration
user_studentsCourse browsing, enrollment, and progress tracking
user_subscriptionsSubscription plans, credit packs, and add-on browsing
user_sessionsSession event browsing and registration
user_billingBilling history and payment viewing
Permission KeyControls
2fa_enabledWhether 2FA is available for the role
2fa_requiredWhether 2FA is mandatory for the role

Administrators configure permissions in Admin Portal > Administration > Preferences > Role Permissions. The matrix shows:

  • Rows: Each permission key
  • Columns: Each role (User, Admin, Student, Volunteer, Instructor)
  • Toggles: Enable or disable each permission per role

The matrix is organized into two tabs:

  • Admin Portal tab — Shows all admin_* permissions
  • User Portal tab — Shows all user_* permissions

Security permissions (2fa_enabled, 2fa_required) appear in a separate section.

When enabling admin-scoped permissions for non-admin roles (e.g., giving the Student role access to admin_users), a confirmation modal appears warning about the security implications. This prevents accidental privilege escalation.

Users with the admin role who have the wildcard permission (*) bypass all permission checks. This is the super-admin level — they can access everything regardless of individual permission settings.