Built for plants that take auditors seriously.
AutoOps handles production data, supplier lots, and operator notes. Here's exactly how the current product protects it — and what's still on the roadmap. No claims we can't back up.
Identity & access
- Email + password with bcrypt (cost 12) hashing, email verification, and password reset. Google OAuth supported.
- Server-side cookie sessions — HTTP-only, random tokens.
- Org RBAC — owner > admin > member > viewer, enforced on every tRPC procedure that mutates org data.
- Reports, uploads, conversations, templates, the SAP cache, and the write-back queue are all scoped by
organizationIdserver-side. - Token-based email invitations; seat caps enforced at invite and at checkout.
SAP connection
One connection per organization, using HTTP Basic or OAuth 2.0 client credentials. Credentials are encrypted at rest with AES-256-GCM keyed by a server-side INTEGRATION_ENCRYPTION_KEY, decrypted only at sync or write-back time, and never returned by the API or written to logs. CSRF token fetch for unsafe verbs; a 15-second hard request timeout.
SAP data flow
- Pull — hourly in-process sweep with retry/backoff and per-integration isolation (work orders, BOM, routing, quality notifications, production confirmations), cached per org.
- Push — every write goes through a queue with idempotency keys, exponential backoff (1m → 5m → 30m), a dead-letter queue for admin retry, and a reconciliation sweep every 5 minutes.
Audit logging
Append-only audit rows on every create / update / delete for org membership, invitations, billing, reports, uploads, conversations, SAP integration changes, sync runs, and the write-back lifecycle. Org admins see the recent history in Settings → Organization.
Storage, secrets & AI
- File bytes live in private Supabase Storage buckets, reachable only through server-minted, short-lived signed URLs.
- All other secrets are environment variables;
.envis never committed. - AI features use Anthropic's Claude. Prompts, messages, and a small (~2 KB) SAP context summary are sent per request. Customer data is not used to train the model under Anthropic's standard API terms.
Hosting & transport
A single Node/Express process with HTTPS terminated at the proxy. /healthz and /readyz endpoints are available for uptime probes.
Contact
Security questions, or want the full security overview? Email contact@autopsai.com.