Security at Backfill
Your books contain some of the most sensitive data in your business. We treat that seriously.
Authentication
We use a dedicated third-party authentication provider — we never see or store your password.
- Magic link and OAuth login — sign in via email link or your Google/Microsoft account
- Multi-factor authentication — available for all accounts
- Session management — sessions are validated on every request and can be revoked instantly on logout
Tenant Isolation
Every Backfill company is a fully isolated tenant. Isolation is enforced at the database level, not just the application layer. There is no code path that can accidentally return another tenant’s data — queries without a valid tenant context fail by default.
Encryption
In transit: All connections to Backfill are encrypted via TLS.
At rest: Sensitive credentials are encrypted using AES-256-GCM.
- Connector credentials (OAuth tokens, API keys, webhook secrets) are encrypted before being stored
- API client secrets are encrypted at rest
- Encryption keys are managed separately from the database
API Security
Backfill’s API uses signed request authentication.
- Every request is signed with your API secret and verified using constant-time comparison
- Requests include a timestamp — we reject anything older than 5 minutes to prevent replay attacks
- API credentials are cryptographically generated
Webhook Security
Inbound webhooks are verified before processing.
- Signature verification — every webhook is verified against your connection’s secret
- Replay protection — timestamp validation rejects stale events
- Idempotent processing — duplicate events are deduplicated and processed exactly once
Audit Logging
Administrative actions are logged with actor, action, target, and IP address. Credential rotations are timestamped. Sensitive values (passwords, tokens, secrets) are automatically redacted from all logs.
Credential Management
Connector credentials are encrypted at rest with support for rotation.
- Each credential is scoped to a specific tenant and connection
- Rotation creates a new credential and timestamps the old one — nothing is silently overwritten
- Revoked credentials are marked, not deleted
Questions
Security questions or vulnerability reports: security@backfill.io