Compliance: GDPR Art.5(1)(f)/Art.25/Art.32, BIO A.6.2, NIS2 Art.21(2)(i) Owner: GloryLabs Review cycle: Annual or when onboarding new staff
This document covers:
When an auditor accesses the GET /api/v1/photos/{verificationId} endpoint or uses the app's verification flow, they are presented with photo metadata (SHA-256 hash, capture timestamp, AI detection result). The following applies:
| Purpose | Legal Basis | |---------|-----------| | Verify photo authenticity | Legitimate interest of the photo owner (GDPR Art.6(1)(f)) | | Fraud prevention / integrity audit trail | Legitimate interest (GDPR Art.6(1)(f)) |
Auditors (data subjects) have the right to request erasure of access logs by contacting GloryLabs at the address in the app's Privacy Policy. Requests are honoured within 30 days.
AuditPic is hosted on a VPS in the Netherlands (TransIP). No data is transferred outside the EEA in normal operation. If AI detection via Hive Moderation is enabled, photo bytes are transmitted to Hive's US-based API — ensure users have been informed via the Privacy Policy and an appropriate transfer mechanism (SCCs) is in place before enabling AI_DETECTION_ENABLED=true in production.
All GloryLabs team members with access to AuditPic production infrastructure (VPS SSH, k3s, 1Password vault, production database) must complete the following before access is granted:
| Module | Provider | Frequency |
|--------|---------|-----------|
| GDPR Fundamentals | Internal (see docs/training/gdpr-fundamentals.md) | Onboarding + annual refresh |
| Secure Development Practices | Internal (OWASP Top 10 walkthrough) | Onboarding + annual refresh |
| Incident Response Procedure | This repository (docs/incident-response.md) | Onboarding + after any incident |
| Password & Secrets Management | 1Password team onboarding guide | Onboarding |
Training completion is recorded in the reports/training/ directory with the following fields:
Staff member: [name or pseudonym]
Module: [module name]
Completion date: [YYYY-MM-DD]
Trainer / platform: [name or URL]
Expiry date: [YYYY-MM-DD]
Records are retained for the duration of employment plus 3 years.
When a team member leaves GloryLabs:
~/.ssh/authorized_keys on the VPS.reports/access-revocations/.Devices used to access production systems (VPS SSH, k3s dashboard, GitHub) must meet these minimum requirements.
| Control | Requirement | |---------|-----------| | Screen lock | PIN/biometric, ≤ 5 minutes auto-lock | | Full-disk encryption | Enabled (FileVault on macOS, BitLocker on Windows, built-in on iOS/Android) | | OS patching | Within 14 days of security patch release | | Remote wipe capability | Enrolled in an MDM solution or Find My Device enabled | | Approved VPN | Required when accessing production over public Wi-Fi | | SSH key storage | Hardware key (YubiKey) preferred; software key must use a passphrase |
Internal test builds are distributed via:
Testers must acknowledge the data handling terms before installing. Test devices must meet the same MDM requirements as production devices.
Before shipping any new feature that processes personal data, the developer must check:
The AuditPic Privacy Policy is maintained separately and must be linked from:
Any changes to personal data processing must be reflected in the Privacy Policy before the updated feature ships.
Reacties