Reference
Roles and permissions
The two vocabularies, side by side: a school's roles and the platform's permissions, and why they are not the same list.
There are two vocabularies, and they deliberately do not share words. A school has roles: an administrator runs the year, a teacher teaches it. The platform has permissions: named capabilities that a platform actor either holds or does not.
School roles
| Role | Reaches |
|---|---|
| Administrator | The whole of that school: year, classes, subjects, people, grading, publication |
| Teacher | The class and subject pairs assigned to them, and nothing else |
A school's roles are about a year's work. They are not a way to reach the platform, and the platform cannot be reached through a school's session at all.
Platform permissions
| Permission | What it allows |
|---|---|
platform.dashboard.read |
The bounded aggregates |
platform.school.list |
The directory |
platform.school.read |
One school's record |
platform.school.create |
Creating a school |
platform.school.provision |
Provisioning a created school |
platform.school.suspend |
Suspending, and reactivating |
platform.school.terminate |
Terminating, which is final |
platform.feature.manage |
Changing a school's features |
platform.subscription.manage |
Storing a school's plan and state |
platform.settings.read |
The feature catalogue and subscription states |
platform.access.begin |
Beginning a recorded access to a school |
platform.access.end |
Ending it |
Why the vocabularies differ
A school's role describes a job. A platform permission describes an operation, because the platform's actors are few and their authority is narrower than a job title: an operator who may read every school's record may not terminate one.
A permission the session does not hold is not offered as a disabled control. The console hides the control and the boundary refuses the operation anyway, which is the only arrangement where hiding a control is not the security boundary.