One central permission engine. 30 predefined roles, 8 permission categories, component-level governance across every module — managed exclusively from the Super Admin Console.
Section B
Every access decision composes from these eight categories. Components — buttons, columns, exports, endpoints — are tagged with one or more codes.
Patient List, Revenue Dashboard, Doctor Calendar
Appointment, Prescription, Job Post
Treatment Plan, Clinic Profile, Shift
Cancel Appointment, Remove Doctor
Invoice PDF, Patient Report, Financials
KYC, Refund, Stock Transfer
Commission %, Clinic Hours, Templates
Support viewing as Patient
Section C
Browse all 30 roles. Filter by ecosystem, search by ID/persona/module, click to inspect the full component-level access profile.
Section D
Ten governance primitives that make RBAC manageable at scale — from inheritance to dependency mapping and dual-control approval.
Drag-and-drop role builder with V/C/E/D/X/A/CF/I matrix per module.
Roles inherit from parents (R-DOC-03 ⟵ R-DOC-02). Cascade updates with confirm.
Search by mobile/email/ID, assign multiple roles. Deny overrides Allow.
Auto-expiring elevated access (e.g. covering colleague). Fully audited.
Impersonate a role to preview exact UI a user would see — no login.
Per-role row filters: clinic_id, region, assigned-doctor — enforced at query layer.
Dual authorization for R-ADM-01 / R-CHN-01 permission edits.
Immutable log of who/when/what for every role and assignment change.
Granting Create-Rx auto-suggests View-Clinical-History + View-Drug-DB.
JSON/CSV export of role definitions for env replication & audits.
Section E
How the central RBAC engine actually reaches every page, query and API call across all nine application instances.
Every request validated at the gateway against required permission. 403 on mismatch.
UI components removed from DOM — not disabled. Permissions loaded on login.
Queries auto-scoped: WHERE clinic_id IN (allowed_ids). Zero leak at SQL level.
Module boundary re-checks user's module-specific permissions on navigation.
15-min idle timeout for sensitive roles. Critical actions require re-auth.
Affected sessions refresh cache within 60s of any role change — no logout.
See the full platform footprint or jump into any module surface.