DutyBooker

Security and trust

Built like it matters, because it does.

Volunteer records, welfare notes and vetting fields deserve more than a shared database and a promise. Here is how DutyBooker keeps your organisation's data yours.

An isolated database per organisation.

Your organisation's data lives in its own database. Not a shared table with a customer column, a separate database entirely. Nothing to leak across, nothing to filter wrongly.

Your own encryption key.

Sensitive fields are encrypted at rest with a key that belongs to your organisation alone, managed through AWS KMS envelope encryption. One organisation's key opens nothing of anyone else's.

No guessable identifiers.

Every record is addressed by a long random identifier. There are no sequential IDs to enumerate and no way to guess at another record from the one you can see.

Permissions enforced server-side.

Every action is checked on the server against the signed-in member's permissions and scope. Field-level visibility is enforced at render and at input. Hiding a field in the interface is never the control.

A full audit trail.

Every write is logged with who, what and when. Reads of sensitive data are audited too, which matters when welfare records are involved.

Hosted on AWS.

DutyBooker runs on AWS. Secrets live in AWS Secrets Manager and encryption keys never leave AWS KMS.

Your data stays yours.

A complete export of your organisation's data is available on request. If you leave, we can delete your database and your key, cleanly and completely.

Our baseline

Built to an OWASP ASVS L2 baseline.

We build and test against the OWASP Application Security Verification Standard, Level 2, as our security baseline. We say baseline deliberately: it describes how we build, not a badge we bought. We will never claim a certification we do not hold, and when we attain formal certifications we will name them here and nowhere sooner.

See DutyBooker on your own duties.

Bring a rota and we will show you what it looks like in DutyBooker. Half an hour, no obligation.