Chapter 7 — Groups, roles and permissions
Lesson map
Lesson 07 published. Map, example, EX025.
flowchart TD
N0["Learning outcomes"]
N1["7.1 Role mapping"]
N2["7.2 Group-based access"]
N3["7.3 Effective permissions"]
N4["Synthesis"]
N0 --> N1 --> N2 --> N3 --> N4
N4 --> EX["Worked example"]
EX --> Q["Exercise EX025"]
Logical drawing
flowchart LR
N0["Learning outcomes"]
N1["7.1 Role mapping"]
N2["7.2 Group-based access"]
N3["7.3 Effective permissions"]
N4["Synthesis"]
N0 --> N1 --> N2 --> N3 --> N4 --> Q["EX025"]
[Learning outcomes]
|
v
[7.1 Role mapping]
|
v
[7.2 Group-based access]
|
v
[7.3 Effective permissions]
|
v
[Synthesis]
|
v
[Worked example] --> [Exercise EX025]
Learning outcomes
You will (1) map roles to permissions; (2) configure group-based access; (3) check effective permissions.
7.1 Role mapping
Tomas and the practice manager list what each role needs. Dentists need full access to patient charts and X-rays; nurses need charts and appointment views; receptionists need appointments and patient contact details but not clinical notes; the practice manager needs payroll and reports. Tomas writes this as a table and asks a senior dentist to confirm the clinical rows. The table becomes the reference for configuration, so access follows an agreed decision rather than what someone was given years ago.
7.2 Group-based access
Tomas configures access through groups, never by assigning permissions to individuals. In the dental records system, role-dentist, role-nurse and role-reception each map to a permission set matching the table. Individuals are added to groups. When a nurse becomes a practice manager, he changes her groups rather than editing many individual permissions. Group-based access keeps configuration small enough to review, which follows the least privilege principle and makes reviews possible in a practice with only part-time IT support. Tomas documents each mapping so a successor can follow it.
7.3 Effective permissions
A person can be in several groups, so their effective access is the combination. Tomas uses the records system's effective-permission view to check three sample users from each role. He finds a receptionist who can read clinical notes because she was also added years ago to an old group named all-staff with clinical read rights. He removes clinical read from all-staff after confirming no one else depends on it. Checking effective access finds problems that a group-by-group review would miss.
Worked example
Role permissions are configured through three groups; an old all-staff group gave a receptionist clinical read access and is corrected.
Synthetic case. Roles, groups and findings are synthetic.
Errors and limits
Assigning permissions directly to individuals makes access impossible to review consistently.
Exercises
- EX025 — Reception needs. What do receptionists need? Rubric: 3 = appointments and patient contact details;; 2 = appointments;; 1 = clinical notes;; 0 = none.
- EX026 — Mover change. How is a mover's access changed? Rubric: 3 = change their groups;; 2 = groups;; 1 = edit permissions;; 0 = none.
- EX027 — Hidden access. How did a receptionist get clinical read? Rubric: 3 = old all-staff group;; 2 = all-staff;; 1 = admin;; 0 = none.
- EX028 — Combined access. Why check effective permissions? Rubric: 3 = access combines across groups;; 2 = combination;; 1 = speed;; 0 = none.
Synthesis
Role tables, group-based access and effective-permission checks keep access matched to need.
Continue studying — chapter 07 of 18
← Chapter 06 (draft) · Course chapter index · Chapter 08 (draft) →