Built for CISOs
and the reviews they run.
AI deployments create a hard problem: credentials must be accessible enough for agents to use, but secure enough that a breach does not result in unlimited inference spend, data exposure, or regulatory liability. This page explains how Clevername addresses that problem.
Version 1.0, March 2026. Audience: CISOs, security engineers, compliance teams. sales@clevername.net
- Key custodyServer-side in GCP Secret Manager, AES-256-GCM, wrapped by a Cloud KMS key.CMEK
- Stored contentMetadata only by default. Per-user zero-knowledge I/O encryption on request.opt-in
- IsolationLogical, app-layer tenant scoping; DB-level RLS rolling out. Dedicated deployment on the roadmap.shared key
- ApprovalsHigh-risk tool calls held for an Ed25519-signed human decision.SignedApproval
- AuditSHA-256 hash chain over every AI action; Secret Manager access in Cloud Audit Logs.SIEM export
Bring your own keys, we handle routing and policy, you keep control.
Existing approaches fail in predictable ways: store keys in environment variables and they appear in logs and are visible to every developer with container access. Rotate keys manually and it doesn’t happen. Let the AI platform hold your keys and you have no audit trail, no visibility into usage, and no recourse if the platform is breached.
Clevername’s model: bring your own keys, we handle routing and policy, you keep control.
Security Architecture
Server-Side Key Custody (Secret Manager + CMEK)
Your AI provider keys are stored server-side in Google Cloud Secret Manager, encrypted at rest with AES-256-GCM and wrapped by a Cloud KMS key (CMEK). They are not held in zero-knowledge form, because the backend must be able to decrypt them to forward your requests to the provider. But they are never written to our application database, never logged, and only the hub-core service account can read them. Keys are fetched at the moment of an API call and discarded from memory immediately after. There is no browser-side or passkey-based key vault: the key you paste is sent to our backend over TLS and encrypted there.
Zero-Knowledge I/O Encryption (per user, opt-in)
Stored agent content is a separate system from provider keys, and it can be zero-knowledge. A user who enables I/O encryption under Settings → Privacy derives a key from a passphrase in the browser (PBKDF2, 600,000 rounds) and generates an RSA-OAEP-2048 keypair; only the public key and a passphrase-wrapped private key reach Clevername. Every stored copy of that user's agent content (I/O log prompts and responses, tool-call arguments, results, and errors, PII and secret-finding excerpts, tool-call renders in observed actions, system-prompt previews and baselines, false-positive report text, and ClaimGuard evidence) is then encrypted with a per-record AES-256-GCM key wrapped once to the user's public key. No escrow, no server-side decrypt path. CleverGuard still scans the plaintext in memory before encryption, so this is zero-knowledge at rest, not end-to-end. Four things remain server-readable by design: tool arguments parked for a human approval (platform KMS envelope, deleted after execution or expiry), the results of asynchronous tool executions (same platform KMS envelope, so the requesting agent can poll for them; pruned by the 90-day content sweep), the contents of files the user's agent reads (same platform KMS envelope, so the server-side agent can receive the body it requested; the browser-held private key is not available to it), and content the user explicitly donates for training. For all four, an operator holding the KMS key and database access can read the content; the envelope means a database dump alone is not enough. Note also that this is a per-user opt-in setting rather than an organization-wide control. An administrator cannot enable it on a member's behalf, and content belonging to users who have not enabled it is stored readable subject to the platform-wide metadata-only default.
Encryption Keys (CMEK)
Clevername uses Google Cloud KMS (CMEK) to wrap stored secrets. On the default multi-tenant deployment this is a single shared Clevername-managed KMS key. You get CMEK protection without operating a key yourself, but the key is not per-tenant and is not one you own or control. Disabling the key renders all wrapped secrets unreadable, and every KMS operation generates an audit log entry exportable to your SIEM. The roadmap enterprise Dedicated deployment runs in your own cloud, where the KMS key lives in your GCP project and you control revocation directly.
Least-Privilege IAM
The service account that runs Clevername's backend has conditional IAM bindings that restrict Secret Manager access to only the secret name prefixes it needs. It cannot read platform infrastructure secrets (database credentials, OAuth client secrets) using the same binding that allows it to read user-key secrets. No service account key files exist anywhere in the CI/CD pipeline or runtime. All GCP authentication uses Workload Identity Federation with short-lived OIDC tokens.
Agent Review: Agent Governance
Before an agent can be deployed in production, it must complete a 27-question security intake covering data flow, tool scope, autonomy level, network access, compliance frameworks, and prompt security. The intake compiles to a guardrail profile stamped with a SHA-256 version hash of the agent's configuration. Changing the agent's saved model or system prompt invalidates that hash and forces re-governance, so you cannot silently change a governed agent's saved configuration. Separately, the system prompt sent on each request is compared at runtime against the baselines learned for that agent: a wholesale rewrite is rejected with HTTP 429, and smaller edits are recorded as drift alerts.
Human-in-the-Loop for High-Risk Actions
When an agent triggers a high-risk pattern (file deletion, payment initiation, sensitive system access), hub-core intercepts the tool call before execution and sends a push notification to the approver's mobile device. The decision is signed with Ed25519, so it cannot be forged or replayed. The LLM cannot bypass this gate; it operates at the protocol layer between the LLM's tool call request and the MCP server's execution.
Audit Trail
Every AI action is logged: token counts, provider, model, cost attribution, tool calls (server, tool name, arguments, not return values), policy decisions, and content hash. Records use a hash chain: SHA-256 of each record incorporates the previous record's hash. Modifying a retained record, forging a record, or deleting one from inside the chain breaks verification detectably; truncation of the newest records is covered by SIEM forwarding rather than by the chain itself. GCP Secret Manager DATA_READ/WRITE audit logs are enabled separately and cannot be modified by the application layer.
Deployment Security
The hub-core backend has no public IP address. All traffic arrives through Vercel’s edge network and is authenticated with a short-lived GCP identity token before reaching Cloud Run. GCP organizational policy blocks allUsers invoker bindings, enforced at the organizational level, not by per-service configuration.
Every production deployment follows a canary pattern: new version deployed with zero traffic, smoke test runs against the canary directly, traffic shifted only on passing. A deployment with a startup crash or auth regression never reaches users.
Data Handling
| Data | Storage | Retention | Encryption at Rest |
|---|---|---|---|
| Historical chat conversations (feature discontinued) | Supabase (Postgres) | Until you request erasure | Supabase TDE (AES-256) |
| Provider API keys | GCP Secret Manager | Until deleted | AES-256-GCM + CMEK (server-decryptable at call time) |
| Agent I/O and tool-call logs, metadata (default) | Supabase | 90 days (CONTENT_LOG_RETENTION_DAYS) | Supabase TDE (AES-256) |
| Agent I/O, tool-call, finding-excerpt, and system-prompt content (user has I/O encryption on) | Supabase | 90 days (content logs); 365 days (DLP findings, org-configurable) | Per-record AES-256-GCM, DEK wrapped to the user's RSA-OAEP-2048 public key; no server key |
| Parked-approval tool arguments | Supabase | Until executed or expired; the approval record 7 days later | AES-256-GCM envelope under the platform KMS key (server-decryptable) |
| Parked-approval and asynchronous tool-execution results (user has I/O encryption on) | Supabase | 7 days after the execution finishes (ENCRYPTED_USER_RETENTION_DAYS) | AES-256-GCM envelope under the platform KMS key (server-decryptable) |
| Audit logs | Supabase | Per plan: 7d Free / 30d Pro / 365d Team / contract Enterprise | Supabase TDE |
| Agent vault grants | Supabase | Until revoked | AES-256-GCM + VAULT_DELEGATION_KEY via CMEK |
| MCP credentials | Supabase | Until deleted | AES-256-GCM |
| Secret Manager audit logs | Cloud Logging | 365 days (configurable) | Google-managed |
- ✓Plaintext API keys in our application database (stored only in Secret Manager, fetched in-memory at call time)
- ✓Prompt, response, or tool text in logs by default (metadata only platform-wide; there is no per-org content-logging switch; a user who wants content retained enables zero-knowledge encryption and holds the only key)
- ✓Request bodies in error monitoring (Sentry receives stack traces and request metadata only)
- ✓Payment card data (Stripe handles payments; Clevername stores only Stripe customer ID)
- ✓Passwords (Supabase Auth handles all credential storage)
Access Controls
MFA is required for all platform admin actions, creating or modifying vault grants (AAL2), and signing approval decisions. Users without MFA are blocked from sensitive operations via HTTP 403.
RBAC with four roles: Owner (full control including billing), Admin (agents, integrations, keys), Member (use agents within scope), Viewer (read-only). Roles can be scoped to specific agents, departments, or environments.
SCIM 2.0 and SSO (SAML 2.0 / OIDC) are available on Enterprise; contact us to enable. When active, SCIM supports automated user provisioning from Google Workspace, Azure AD, and Okta; deprovisioned users are removed from all organizations and their agents are reassigned or quarantined, with API gateway tokens expiring within a 72-hour grace window so in-flight automation winds down cleanly. SSO allows admins to enforce SSO-only login to prevent password-based access. Both capabilities require Enterprise plan activation; they are not enabled by default.
Regulatory Alignment
Controls documented across CC6, CC7, CC9, A1, C1, and P5 criteria. Formal third-party audit planned for 2026.
Data minimization, right of access, right to erasure (account deletion removes all user data). DPA available for enterprise customers.
Not BAA-covered by default. Enterprise customers requiring HIPAA coverage should contact us for a dedicated deployment arrangement.
Clevername does not process, store, or transmit payment card data. Stripe is the payment processor (PCI DSS Level 1 certified).
Enterprise Deployment Options
Shared Infrastructure
DefaultStandard multi-tenant SaaS on GCP clevername-488215. Tenants share infrastructure and a single platform database; isolation is logical (app-layer), with server-side ownership checks that scope every query to the caller's org. DB-level Row Level Security policies are deployed and rolling out to enforce mode. Secrets are wrapped with a Cloud KMS (CMEK) key, so you benefit from CMEK protection without operating a key yourself.
- +CMEK encryption (shared Clevername-managed key)
- +Logical per-tenant isolation (app-layer scoping today; DB-level RLS rolling out)
- +App-layer tenant scoping today; DB-level RLS rolling out
- +365-day audit log retention
Dedicated Deployment
Enterprise · RoadmapOn the roadmap for enterprise: deploy Clevername as a container in your own cloud environment, against your own GCP project and your own KMS keyring. You hold and control the KMS key; Clevername provides the software and the deployment pipeline. This is physical isolation in infrastructure you own, not a per-tenant project we run for you inside our cloud. Contact us to discuss timeline.
- +Runs in your own cloud: your GCP project, your KMS key
- +Your own infrastructure, physically separate from other tenants
- +Available for enterprise on request
- +Contract-defined support terms and custom retention
Bring Your Own Vault (BYOV)
EnterpriseFor enterprises with existing HashiCorp Vault, AWS Secrets Manager, CyberArk, or Azure Key Vault deployments. Your agents use your existing vault. Clevername never holds your secrets in its own Secret Manager.
- +HashiCorp Vault (AppRole + Kubernetes auth)
- +CyberArk CCP (read-only)
- +AWS Secrets Manager (IAM role)
- +Azure Key Vault (service principal or managed identity)
Penetration Testing and Vulnerability Disclosure
Clevername maintains an active red-team testing program. Adversarial test suites cover prompt injection bypasses (Unicode smuggling, Base64 obfuscation, XML injection, temporal bypasses), IDOR attacks on org and user endpoints, budget enforcement circumvention, auth bypass via header manipulation, and guardrail bypass attempts.
Responsible disclosure: report to security@clevername.net (see security.txt). We acknowledge within 5 business days, provide a resolution timeline for critical issues, and credit researchers with their permission.
Enterprise inquiries
For SOC 2 report requests, dedicated deployment discussions, BAA arrangements, or custom security reviews, reach out to our enterprise team.