Security

Last updated: 2026-04-29

The Portal is built for a domain (property risk and insurance) where data sensitivity, audit, and grounding correctness are table-stakes. This page describes the controls in production today. The full architecture lives in our internal docs; this is the user-facing summary.

The perimeter

The Portal runs entirely inside a single Google Cloud project (us-west1 region). No data crosses to other regions or to public AI services. Every component — the FastAPI service, Vertex AI Gemini, Vertex AI RAG Engine, Cloud Storage, Cloud Firestore, Cloud KMS, Cloud Logging — is a Google Cloud managed service governed by Google's Data Processing Addendum.

Outbound network traffic from the application is restricted to the GCP service endpoints we depend on. There is no path for the application to send your documents to a public LLM API.

Authentication + access

Encryption

Data isolation

Prompt injection defense

The Portal's grounding contract — answer using only the retrieved chunks, return UNSUPPORTED if nothing matches — is the first defense against prompt injection. Documents in your corpus can't override the system instruction to "ignore prior instructions" because the model is structurally told to treat retrieved content as DATA, not INSTRUCTIONS.

Specifically:

Audit + logging

Vulnerability disclosure

Found a security issue? Email security@criticalasset.com with reproduction steps. We'll acknowledge within 2 business days and remediate critical issues within 7. We don't run a paid bug bounty, but we credit responsible disclosures in our internal security log and will work with you on coordinated disclosure timing.

Please don't probe the live Portal beyond what's needed to reproduce. Do not exfiltrate other users' data; do not run automated scanners against production. We will action good-faith research without legal action; we will pursue malicious activity.