← Back to homepage
Security & trust

Security at Quaspar

Quaspar builds AI workers for healthcare and research organizations — work that demands more than promises. Everything on this page describes what is implemented and verifiable today. Where something is planned rather than shipped, we say so.

Every request to Quaspar is authenticated, checked against your role, scoped to your organization, and recorded in an audit trail. Every AI worker operates inside a permission matrix compiled at creation and enforced by our backend — never by the AI model itself. Consequential actions pause for human approval. Spending is capped daily. And tenant isolation isn't a policy statement: an automated attack suite attempts cross-organization access on every critical endpoint before any release ships, and a single failure blocks the deploy.

On this page
Isolation

Your organization's boundary

Quaspar is multi-tenant with isolation enforced in the backend on every query — never trusted to the browser.

  • Every record belongs to exactly one organization, and every API request is checked against the caller's organization server-side.
  • Attempts to reach another organization's resources return "not found" — foreign resources don't exist as far as any tenant can observe.
  • Continuously attack-tested: our CI creates two organizations and attempts cross-tenant access against every critical endpoint on every build. Any success fails the release.
Organization A
Patients
Workers
Audit log
404 not found
Organization B
Patients
Workers
Audit log

A request carrying Organization A's session can never resolve Organization B's records. Our CI runs this exact attack against every critical endpoint on every build.

Identity

Sign-in and sessions

  • Passwords are stored only as bcrypt hashes, with strength requirements, login rate-limiting, and brute-force lockout.
  • Multi-factor authentication (authenticator apps) is available on every account, and workspaces can require it for administrators.
  • Sessions are short-lived tokens with refresh rotation. Changing your password immediately revokes every session on every device.
  • The server refuses to start in production with a default or missing signing secret — misconfiguration fails loudly, before it can fail silently.
  • Role-based access control (owner, admin, editor, viewer) is enforced on every endpoint.
Data protection

Encryption

  • In transit: TLS for everything — browser to API, API to database, API to cache (private network, TLS + authentication).
  • At rest: all data encrypted at rest; PHI-bearing fields carry an additional application-layer encryption key.
  • Credentials: connector secrets live in a managed secret store and are write-only — no API response ever returns a stored secret.
BrowserAPITLS
APIDatabaseTLS + encrypted at rest
APICachePrivate network, TLS + auth
APISecret storeWrite-only credentials

Encrypted on every hop. Connector secrets are write-only — no API response ever returns a stored secret.

PHI

Protected Health Information

  • Uploaded file bytes are never stored: text is extracted, originals discarded, and files are validated by content, not by declared type.
  • PHI used during a live workflow is scrubbed from stored run state when the run completes, on configurable retention windows.
  • Worker learning stores redacted patterns — never patient identifiers.
  • PHI is processed under Business Associate Agreements; our infrastructure subprocessors offer HIPAA-eligible services under BAA. Contact us to execute a BAA before connecting live patient data.
  • Your data is never used to train AI models and is never sold.
AI safety

AI workers, held to a higher standard

AI that acts needs stricter controls than AI that chats.

Least-privilege permission matrix

Which tools, which data, read vs. write — compiled at creation, reviewable at any time, enforced by the backend. The model never decides its own permissions.

Security review inside every build

An automated pass audits each new worker's design; risky capabilities default to approval-required.

Human approval gates

Outbound messages, submissions, and connected-system writes wait for a person until your organization grants autonomy per capability — revocable at any time.

Hard limits

Per-run tool-call caps, run timeouts, and per-organization daily AI spending caps.

Kill switch

Any run can be cancelled mid-flight, and any worker suspended instantly by an administrator.

Provenance labels

Established evidence, AI inference, and hypothesis are never mixed unlabeled in research outputs.

Worker drafts the action
Step 1
Permission matrix checked
Step 2
Human approves
Step 3
Action executes
Step 4
Recorded in audit trail
Step 5

Nothing consequential leaves Quaspar without a person approving it — until your organization explicitly grants autonomy for a specific capability, which stays revocable.

Accountability

Audit trail

Every security-relevant event is recorded — sign-ins and failures, MFA and password changes, permission changes, every worker run and every tool call, approvals and rejections, exports, cancellations, suspensions, deletions — each with who, what, when, and outcome.

sign_in.succeeded · user · mfa=on
worker.execution.started · intake-agent · run 4f2c
tool.call · ehr.read_patient · allowed by matrix
approval.granted · outbound_message · by admin
worker.execution.completed · phi scrubbed

Illustrative shape only. This is the record HIPAA's audit-control requirement asks for, and it's how your compliance team answers "what did the AI do, and who approved it?"

Engineering

Application and API hardening

  • Rate limiting on all surfaces, with stricter limits on sign-in, and request-size caps.
  • Strict security headers (CSP, HSTS, frame denial), input validation on every endpoint, and sanitization of user-supplied text.
  • Generic error responses — no stack traces, no internals. Signed webhooks (HMAC, per-webhook secrets) and an explicit CORS allowlist.
  • Dependency vulnerability scanning and secret scanning in our pipeline, plus a pre-release audit that gates deploys on vulnerable dependencies, leaked secrets, and the full test suite — tenant-isolation attacks included.
Hosting

Infrastructure

United States hosting

Managed container services on a major cloud provider, in U.S. regions.

Private data plane

Managed PostgreSQL and Redis on private connectivity with no public endpoints. Only the HTTPS API is reachable from the internet.

Backups and recovery

Automated daily backups with point-in-time recovery and tested restores.

Ownership

Your data, your control

Export

Export your workspace data at any time via API.

Delete

Delete your account yourself — password-confirmed. Workspaces where you are the sole member are permanently erased from every table, including audit and learning data.

Disconnect

Disconnect any connector and its stored credentials are deleted.

The complete inventory of what we store, why, for how long, and which subprocessors receive what is available on request.

Vendors

Subprocessors

Cloud infrastructure · AI processing providers · payments (card data never touches Quaspar) · additional AI providers only when your organization selects them · your own connected systems, only as your workflows direct · public research databases (PubMed, ClinicalTrials.gov, and similar) receive search queries only — never patient data.

Disclosure

Reporting a vulnerability

Email bhavesh@quaspar.com — we acknowledge within 2 business days and engage in good faith with researchers. Please test only with accounts you control.

Roadmap

What's ahead, labeled honestly

SOC 2 Type I engagement · independent penetration testing · SSO/SAML for enterprise · expanded anomaly monitoring · public status page. We are not SOC 2 certified today and will not claim it until we are. We publish progress here as it lands — this page only ever claims what's true.

Questions, BAA requests, or a security review for your organization: bhavesh@quaspar.com