← Years 9–10 Digital Systems

The principle of least privilege

Give every user, program and device only the minimum access it needs to do its job. This limits the damage if an account is stolen, and unneeded access should be removed.

Understanding The principle of least privilege in Years 9–10 Digital Systems

What it does: Giving only read permission limits what a thief can do with a stolen account, which is the least privilege idea of limiting damage. Admin rights are used only for the task that needs them, and everyday work stays on a standard account. Programs and devices should also get only the access they need. For example, a photo app does not need access to your contacts. Access that is no longer needed should be removed. Unused access is a risk if the account is stolen or misused.

Common mistakes: Mia only types homework, so she needs a standard account. An administrator account gives far more access than the job needs. It should be account = 'standard'. The print app should only be allowed to print. Allowing all other access breaks least privilege. It should be app.deny('all_other_access').

Class: _____________________  ·  Name: _____________________  ·  Date: _________

Free printable worksheet with full answer key — or add this module to a class and your students practise it interactively.

This module's key terms are also in a printable crossword (Modules 13–24) and word search (Modules 13–40).

Take this worksheet further — free with Cloodit

Each concept is reinforced from every angle — learned, then applied, then tested.

Learning
Duo
Which approach follows the principle of least privilege?
Give a new student helper access only to the files they need for their jobGive a new student helper access to every file so you never get asked for more
Matches
role = "administrator" # for a student who only reads notes
↓
The student has admin access but only needs to read notes. Give them a standard user role instead, which follows least privilege.
Applying
Meanings
Term
principle of least privilege
Meaning
Give every user, program and device only the minimum access it needs to do its job. This limits the damage if an account is stolen, and unneeded access should be removed.
Practice
SET role OF mia TO standard
Testing
Gaps
newUser.accountType ←
Check Answer
Spots
1# Mia only types homework
2account = 'administrator'

Cloodit turns curriculum-aligned coding content into journeys students work through one biome at a time.

The 'Spider' badge — Web Weaver, one of Cloodit's 106 collectible badges
Students earn collectable badges

Over 100 of them, across seven natural biomes.

Study Buddy
Students build a real study resource

Turns their work into revision material ready for Flash Cards and Exam study.

Diamond Dash — one of Cloodit's live, competitive Sprint games
Students lock in with Sprints

Live, competitive practice for the start of the lesson or a teacher-led lesson finisher.

A Cloodit certificate of achievement, ready to personalise and print
Custom printable certificates

Honour your top performers, or encourage a student who's trying hard — ready to print in seconds.

Quick Questions

1. Which approach follows the principle of least privilege?
A. Give a new student helper access only to the files they need for their job ✓
B. Give a new student helper access to every file so you never get asked for more
Least privilege means giving only the minimum access needed to do the job, and no more.
2. Which account should you use for everyday tasks like browsing and writing homework?
A. A standard user account ✓
B. An administrator account
A standard account has limited rights, so it follows least privilege. Admin accounts should be used only when you need to change system settings or install software.
3. A hacker steals the password of a standard user account. Compared with a stolen administrator account, the damage is likely to be:
A. The same, because all accounts can do the same things
B. Smaller, because the account has fewer permissions ✓
Least privilege limits the damage if an account is stolen. A thief can only do what that account is allowed to do.
4. Which statement is true about the principle of least privilege?
A. It applies to users, programs and devices ✓
B. It only applies to human users
Programs and devices should also get only the access they need. For example, a photo app does not need access to your contacts.
5. A student leaves the school robotics club. What should the club's IT team do with their access to the club's shared folder?
A. Keep it, just in case they come back one day
B. Remove it, because they no longer need it ✓
Access that is no longer needed should be removed. Unused access is a risk if the account is stolen or misused.

Match the Pairs

role = "standard user" → Gives the account only everyday access, which is enough for normal tasks and follows least privilege.
remove_access("Sam", "payroll") → Takes away access that is no longer needed, such as when someone changes jobs.
A student account is stolen, but it can only read class files, so the damage is limited. → permissions = ["read"]
Use a standard user account for daily work and an administrator account only when needed. → if task == "install": use("admin")
role = "administrator" # for a student who only reads notes → The student has admin access but only needs to read notes. Give them a standard user role instead, which follows least privilege.
# Alex left the team last term access = ["files", "email", "server"] → Alex's access was never removed after leaving. Access that is no longer needed should be removed.

Key Term

principle of least privilege
Give every user, program and device only the minimum access it needs to do its job. This limits the damage if an account is stolen, and unneeded access should be removed.

Fill in the Blanks

1. newUser.accountType ← standard
Hint: Type the account type that gives the least access for everyday work
2. GRANT SELECT ON students TO reportApp
Hint: Type the SQL permission that lets the program only read data, not change it
3. REVOKE ALL ON students FROM oldIntern
Hint: Type the SQL command that takes away access that is no longer needed
4. sudo apt install printer-driver
Hint: Type the command prefix that runs just this one command with administrator rights
5. chmod 600 payroll.csv
Hint: Type the three-digit code giving the owner read and write, and everyone else nothing

Spot the Error

Question 1
A # Mia only types homework
B account = 'administrator'
C can_install_apps = False
Line B — Mia only types homework, so she needs a standard account. An administrator account gives far more access than the job needs. It should be account = 'standard'.
Question 2
A app = 'PrintHelper'
B app.allow('print')
C app.allow('all_other_access')
Line C — The print app should only be allowed to print. Allowing all other access breaks least privilege. It should be app.deny('all_other_access').
Question 3
A left_team = True
B if left_team:
C keep('team_drive')
Line C — Access that is no longer needed should be removed. Someone who has left the team should lose access to the team drive. It should be revoke('team_drive').
Question 4
A account = 'student'
B access = 'all_school_files'
C # If stolen, damage is small
Line B — Limited access means a stolen account can only cause limited damage. Access to all school files would let a thief do much more harm. It should be access = 'own_files_only'.
Question 5
A def set_access(user):
B if user.is_teacher:
C return 'edit_class'
D return 'edit_everything'
Line D — Everyone who is not a teacher should get only the minimum access. Giving them permission to edit everything gives too much. It should be return 'view_own_work'.

Student with a class code? Join your class →