How we protect your data. For vulnerability reports, see the disclosure section below. Questions: security@sofro.ai
Data protection
Encryption at rest. OAuth tokens (Microsoft 365 credentials) are encrypted with AES-256-GCM using a unique randomly generated IV per token. Encryption keys are versioned to support rotation without re-encrypting existing tokens. Raw email bodies are never persisted to our database. The assistant reads them in memory to draft or summarise, and only the result plus lightweight metadata (sender, subject, date; event titles, times, attendees) is stored. Calendar event descriptions are never stored.
Encryption in transit. All connections use TLS. HSTS with preload is enforced on all responses (max-age 31536000, includeSubDomains).
Human-in-control architecture. Sofro never performs write actions (sending email, modifying calendar, editing documents) without your explicit approval. Every action you approve is recorded in a tamper-evident audit log. Read-only operations (reading your inbox, checking your calendar) execute immediately when you ask.
Error monitoring. Application errors are reported to Sentry. Request bodies and user identifiers (email address, username, IP address) are stripped from error events before transmission. No email or calendar content is ever included in error reports.
Infrastructure
Hosting. Sofro runs on Vercel in the EU (Stockholm region). The primary database (Neon) and AI inference (Verda, DataCrunch Oy) are also hosted within the EU. Your content is processed and stored entirely within the EU, and is never sent to a US AI provider. Audit logs are written to a tamper-evident hash chain in the database and to AWS S3 in Stockholm (eu-north-1) with S3 Object Lock (WORM) enabled, making them immutable. Enterprise customers can additionally enable real-time forwarding to their own SIEM.
Security headers. All responses include: Content-Security-Policy, X-Frame-Options (DENY), X-Content-Type-Options (nosniff), Referrer-Policy (strict-origin-when-cross-origin), and Permissions-Policy restricting camera, microphone, and geolocation access.
Tamper-evident audit log. Every approved action is recorded in a SHA-256 hash chain. Each entry links to the previous entry — editing or deleting any row breaks every subsequent hash, making tampering detectable. Enterprise customers can download a cryptographically signed evidence bundle directly from their admin panel.
Access controls
Authentication is handled by WorkOS (AuthKit). Sofro staff do not have access to your email, calendar, or document content. OAuth tokens are encrypted and can only be decrypted server-side. You can revoke Sofro's access to your Microsoft 365 account at any time from Settings — this immediately invalidates all stored tokens.
For Team and Enterprise accounts, audit log access is restricted to organisation admins. The audit scope can be configured to limit visibility into personal conversations while retaining full logging for project-scoped work.
Certifications
Sofro does not currently hold SOC 2 or ISO 27001 certification. We are building toward SOC 2 Type II. Enterprise customers requiring a security questionnaire or evidence pack should contact security@sofro.ai.
Vulnerability disclosure
Email security@sofro.ai with a description of the issue, steps to reproduce, and potential impact. We respond within 2 business days and aim to resolve critical issues within 7 days. Please do not publicly disclose the issue until we have had a chance to address it.
In scope:
Out of scope:
Contact
Security enquiries: security@sofro.ai
Privacy enquiries: privacy@sofro.ai
Machine-readable policy: /.well-known/security.txt
Last reviewed: July 2026