Skip to main content

Privacy & Data Protection Framework

This document is the central privacy reference for RABS. It defines the data protection principles, classification rules, and handling requirements that apply across all subsystems. Individual systems (location tracking, facial recognition, email, etc.) have their own implementation details in their respective docs -- this document ties them together under a single governance framework.


1. Governing Legislation

RABS operates under Australian law. The key instruments are:

LegislationRelevance
Privacy Act 1988 (Cth)Primary federal privacy law; establishes the APPs
Australian Privacy Principles (APPs)13 principles governing collection, use, disclosure, storage, and access
NDIS Practice StandardsAdditional obligations for disability service providers
Surveillance Devices Act (WA)Governs CCTV and recording at WA premises
Disability Services Act 1993 (WA)State-level protections for participants

Key Principle

Collect the minimum data necessary, hold it for the shortest time possible, restrict access to the fewest people required, and delete it as soon as the purpose is fulfilled.


2. Data Classification

All data in RABS falls into one of four sensitivity levels:

LevelLabelDescriptionExamples
1PublicNo access control requiredCompany name, office address, public announcements
2InternalRequires authenticationStaff rosters, meeting notes, general Discord messages
3ConfidentialRequires authentication + role restrictionHR records, performance reviews, incident reports, payroll
4Sensitive / BiometricRequires explicit consent + strict access + audit trailFace embeddings, location GPS trails, health information, participant records

Classification Rules

  • Default to the highest applicable level. If unsure, classify as Confidential.
  • Biometric data is always Level 4. Face embeddings, voiceprints, fingerprints -- regardless of how they are stored or processed.
  • Aggregated/anonymised data drops one level. A headcount derived from facial recognition is Level 2 (Internal), not Level 4, because no individual is identifiable.
  • Derived data inherits the source level. A report generated from participant records remains Level 3 (Confidential).

3. The Anonymisation Hierarchy

When designing features that process personal data, always start from the top of this hierarchy and only move down when the higher level genuinely cannot satisfy the requirement:

PriorityApproachExample
1 (best)Don't collect at allIf you don't need location, don't request it
2Count only"4 people arrived at HQ" instead of naming them
3Type only"A staff member entered" instead of identifying who
4PseudonymisedInternal ID reference without name displayed
5Identified"Brett arrived at HQ at 9:15" -- only when operationally required

This hierarchy applies across all subsystems:

  • Safe Arrival (CCTV): Default to headcount. Resolve to identity only for evacuation checklists or explicit management request.
  • Location tracking: GPS trails are Level 4 during collection but can be aggregated to Level 2 heatmaps after retention period.
  • Gallery tagging: Face tags are Level 4 but a photo with faces blurred/untagged drops to Level 2.
  • Email analysis: Sender metadata is Level 2; email body content with personal information is Level 3.

Data TypeConsent RequiredWho ConsentsHow
Biometric (face embeddings)Yes -- written/recordedStaff: themselves. Participants: self or guardianOpt-in form before adding to bookface library
GPS location trackingYes -- at employment/enrolmentStaff: employment agreement. Participants: via trackers with guardian consentSystem enforces via login challenge
CCTV recordingImplied by signage + policyAll persons on premisesVisible signage at all camera locations
Email content analysisYes -- at account setupStaff: mailbox ownerAcknowledged during email account configuration
Discord message captureImplied by server membershipStaff: Discord server rulesKnowledge base sync and media grabber documented in onboarding

Right to Withdraw

  • Any person can request removal from the bookface library at any time. Deleting their folder removes all reference embeddings immediately.
  • Staff can request GPS tracking pause (with management approval and operational constraints).
  • Participants (or guardians) can request exclusion from facial recognition -- the system will detect but never match their face.

5. Data Handling by Subsystem

Location Tracking

Full doc: Location Data

AspectRule
Collection triggerGPS: during rostered shifts (support staff) or while logged in (admin/manager)
Storagegeo_events table with lat/lng/timestamp
RetentionDetailed trails: 30-90 days. Then aggregate to daily summary.
AccessExcursion staff and managers only
DeletionAutomatic after retention period via scheduled job

Facial Recognition (Bookface)

Full doc: Bookface -- Facial Recognition & Safe Arrival

AspectRule
ProcessingEntirely local -- GPU on server, no cloud APIs, no data leaves the LAN
Reference photosStored in bookface folders on NAS. Deletable on request.
EmbeddingsStored in metadata JSONB. Cannot be reversed to images.
CCTV framesDeleted immediately after processing. Never retained.
Match resultsStored as person_id reference only. No face crops saved.
AccessManagement only for identified results. Headcounts available to team leaders.

Discord Media Capture

Full doc: Gallery & Media System

AspectRule
ScopeAll non-private, non-excluded Discord channels
Private channelshr-confidential, incident-reports, performance-reviews, disciplinary, complaints, payroll -- never captured
StoragePhotos and videos on NAS, metadata in media.discord_media
RetentionIndefinite (media is an organisational asset)
AccessAuthenticated users only via admin dashboard

Email

Full doc: Admin Email Integration

AspectRule
StorageEmail bodies cached locally. Attachments fetched on demand, expire after 7 days.
AI analysisReggie analyses emails for routing and context. Content never sent to external services without the mailbox owner's knowledge.
AccessMailbox owner + explicitly shared users only
SecretsIMAP/SMTP credentials encrypted at rest. Never logged.

6. Data Retention Schedule

Data TypeActive RetentionArchivePermanent Delete
GPS location trails30-90 daysAggregated daily summary kept 2 yearsRaw trails purged after 90 days
CCTV frames0 (immediate delete after processing)N/AImmediate
Face embeddings (gallery)While photo existsN/ADeleted with photo or on request
Face embeddings (bookface reference)While person is activeN/ADeleted when person leaves org or withdraws consent
Safe Arrival logs12 monthsAggregated attendance stats kept indefinitelyIndividual records purged after 12 months
Discord media filesIndefiniteN/AManual deletion only
Email cache7 days (attachments), indefinite (metadata)N/AAttachment cache auto-purges
HR recordsDuration of employment + 7 yearsArchived after separationPurged after statutory period
Audit logs2 yearsCompressed archivePurged after 2 years

7. Access Control Matrix

DataAdminExecSenior MgmtManagementTeam LeaderSupport StaffParticipant
Own GPS locationYesYesYesYesYesYes (during shift)N/A
Others' GPS locationYesYesYesExcursion onlyExcursion onlyNoNo
Gallery (all photos)YesYesYesYesView onlyView onlyNo
Gallery (face tags)YesYesYesYesNoNoNo
Safe Arrival (names)YesYesYesYesNoNoNo
Safe Arrival (counts)YesYesYesYesYesNoNo
Super heart votingConfigured per user in app settings
HR recordsYesYesYesOwn teamNoOwn onlyNo
Email contentMailbox owner + shared access list
Audit logsYesYesNoNoNoNoNo

8. Technical Safeguards

At Rest

  • Database: PostgreSQL with role-based access. Sensitive columns in dedicated schemas (media, hr).
  • Files: NAS with SMB authentication. No anonymous access.
  • Backups: Encrypted. Retention follows the same schedule as source data.

In Transit

  • All API traffic over HTTPS (TLS 1.2+).
  • Internal LAN traffic between server and NAS is within a private network segment.
  • No biometric data ever transmitted to external services.

In Processing

  • Facial recognition runs on local GPU. No cloud inference.
  • CCTV frames exist in memory only during processing, never written to disk.
  • Email AI analysis uses configured LLM providers with data processing agreements in place.

Logging & Audit

  • All access to Level 3+ data should be logged (who accessed what, when).
  • Failed access attempts logged with IP and user ID.
  • Logs themselves are Level 2 (Internal) and follow 2-year retention.

9. Incident Response

If a data breach or privacy incident is suspected:

  1. Contain -- isolate the affected system/account immediately.
  2. Assess -- determine what data was exposed, to whom, and for how long.
  3. Notify -- if the breach involves personal information and is likely to cause serious harm, notify the OAIC (Office of the Australian Information Commissioner) within 30 days and affected individuals as soon as practicable.
  4. Remediate -- fix the vulnerability, revoke compromised credentials, and update access controls.
  5. Document -- record the incident, response actions, and lessons learned in the audit log.

Biometric-Specific Response

If face embeddings or reference photos are compromised:

  • Immediately regenerate all affected embeddings from source photos (embeddings are deterministic, so new model version = new embeddings).
  • If source photos were compromised, notify affected individuals and offer removal from the bookface library.
  • Face embeddings alone cannot reconstruct a face image, but combined with other data they could aid identification -- treat as Level 4 breach.

10. Privacy Impact Assessments

A Privacy Impact Assessment (PIA) must be conducted before deploying any new feature that:

  • Collects new categories of personal information
  • Introduces biometric processing
  • Changes how existing personal data is used or shared
  • Integrates with a new third-party service that receives personal data

Completed/Required PIAs

FeaturePIA StatusNotes
Location tracking (GPS)Required before productionCovered in location data doc
Bookface facial recognitionRequired before Phase 3Covered in bookface doc
Safe Arrival (CCTV)Required before Phase 3BExtends bookface PIA
Discord media captureLow risk (public channel content)Informal review sufficient
Email AI analysisRequiredDepends on LLM provider DPA
TOKENWATCH (API monitoring)Not required (no personal data)Operational data only