Security model

Tenant boundaries and explicit provider trust.

How DetailOAR scopes data, authorizes actions, protects sessions and media, verifies payments, records audits, and fails closed in production.

Tenant and role controls

Domain records carry a tenant identifier. Authenticated requests resolve the workspace server-side and permission middleware protects sensitive actions.

Sessions and credentials

Passwords are salted and hashed, session tokens are hashed at rest, cookies are HttpOnly and Secure in production, and optional TOTP protects admin access.

Payments and webhooks

Payment bodies are verified with provider signatures before parsing, financial events use idempotency keys, and platform billing is separated from a detailer’s customer payments.

Private media

Uploads are type- and size-checked, stored by tenant and record, and served through authorization or unguessable access. Public storage is not appropriate for private customer images.

Production safeguards

The application refuses normal production traffic when cryptographic secrets are unsafe or durable Postgres is missing. External providers remain visibly unconfigured until connected.

Report a concern

Email security@detailoar.com with a concise reproduction. Do not include unnecessary customer data.