Multi-Surgery & RBAC

The Signposting Toolkit supports full multi-tenancy, allowing multiple GP surgeries to operate independently on the same platform. Each surgery has complete data isolation, custom configuration, and role-based access control.


Multi-Surgery Architecture

Data Isolation

Each surgery operates as a completely independent tenant:

Per-Surgery Configuration

Every surgery can customise:

Surgery Switching

Superusers can switch between surgeries to manage multiple practices. Each surgery maintains its own context and configuration.


Role-Based Access Control (RBAC)

The system uses a three-level access hierarchy to control what users can do.

User Roles

1. Superuser (Global)

Superusers have system-wide access and can:

Use Case: Platform administrators, central maintainers

2. Surgery Admin

Surgery Admins manage their practice and can:

Use Case: Practice managers, lead clinicians, practice admins

3. Standard User

Standard Users have basic access and can:

Use Case: Reception staff, care navigators, standard users


Permission Model

Hierarchical Permissions

Permissions cascade hierarchically:

Access Rules

Symptom Management

Clinical Review

Configuration


User Management

User Creation

Users can be created at different levels:

User Memberships

A single user can belong to multiple surgeries with different roles:

Multi-Surgery Membership

Example:

This allows users to work across multiple practices while maintaining appropriate permissions for each.

Default Surgery

Each user has a default surgery that determines:


Feature Flags

Features can be controlled at multiple levels:

Flag Hierarchy

  1. Superuser Level — Global feature control
  2. Surgery Level — Per-practice enablement
  3. User Level — Individual overrides (if surgery enabled)

Current Features

Flag Logic

A feature is enabled for a user only if:

  1. Feature exists in system
  2. Surgery-level flag is enabled (or user is superuser)
  3. User-level flag is enabled (or not set, defaults to surgery value)

Data Security

Isolation Guarantees

Authentication

Audit Trail

All actions are logged with:


Best Practices

For Superusers

For Surgery Admins

For Standard Users


Use Cases

Single Surgery

A practice operates independently:

Multi-Surgery Organisation

A superuser manages multiple practices:

Shared User

A user works at multiple practices:



Last updated: December 2025