A complete reference to how Versus protects data — in transit, at rest, and in use — written to support the security and compliance evaluations that precede adoption at regulated enterprises. It states the data Versus handles, the controls around it, the cryptography that backs them, and direct answers to the questions a compliance officer will ask.
Versus connects to a customer's most sensitive infrastructure — firewalls, load balancers, routers, and the credentials that operate them. That places security at the center of the product. Four principles recur through every control below:
Every actor gets the minimum access required. Tenant traffic never runs as a privileged database role; credentials are scoped by path and capability; the platform never holds device credentials it doesn't need.
When context is missing or a check is inconclusive, access is denied. Tenant isolation errors rather than leaks; keys that can't be resolved deny rather than expose; an unverifiable token is rejected.
No single control is load-bearing. Application scoping sits over database-enforced isolation; secrets are encrypted at the field and envelope level; identity is authenticated, authorized, and MFA-gated independently.
Controls are backed by tamper-evident audit, automated scanning, and conformance tests — so "isolation holds" is continuously demonstrated rather than claimed once.
Versus is engineered against the control families common to the major frameworks. Standing is stated honestly — several items are formal-audit-in-progress rather than certified today.
| Framework | Standing | How Versus addresses it |
|---|---|---|
| SOC 2 (Security, Availability, Confidentiality) | In progress | The technical controls for the Trust Services Criteria exist (access control, encryption, change management, monitoring, audit). A formal Type 2 examination window is the remaining work — the gaps are process and evidence, not missing controls. |
| ISO/IEC 27001 | Aligned | Annex A objectives — access control, cryptography, operations security, supplier & asset management — are reflected in the architecture; certification can be pursued on the same base. |
| GDPR / data protection | Supported by design | Data residency via on-prem/regional deployment, tenant isolation, deletion & export paths, and minimized PII (Versus is infrastructure data, not consumer PII). DPA available. |
| HIPAA / regulated sectors | Deployable in scope | On-prem deployment keeps regulated data in the customer’s controlled environment; encryption, audit, and access controls support a BAA-style arrangement where applicable. |
| PCI-DSS adjacency | Supporting controls | Not a cardholder-data system, but segmentation, key management, audit, and least-privilege align with PCI network-security and access-control requirements. |
Effective controls start from knowing what is being protected. Versus handles infrastructure operational data, not consumer PII datasets.
| Category | Examples | Sensitivity | Primary controls |
|---|---|---|---|
| Device credentials & secrets | Admin passwords, SSH keys, API tokens, device certificates | Critical | Vault envelope encryption, per-secret keys, path policies, PSM injection, audit |
| Device configuration & state | Firewall rules, LB/ADC configs, routing tables, topology, backups | Confidential | Encryption at rest, tenant isolation, RBAC, encrypted backups |
| User & account data | Operator identities, roles, MFA enrollment, sessions | Confidential (limited PII) | Dedicated IdP, MFA, encrypted storage, minimal PII footprint |
| Telemetry & observability | Metrics, logs, PCAP captures, device health | Internal | Tenant isolation, access control, retention limits |
| Audit & security logs | Who accessed which secret/device/session; admin actions | Integrity-critical | Tamper-evident hash-chained audit, restricted access |
| Platform secrets | Encryption keys, signing keys, service credentials | Critical | Key hierarchy, fail-closed resolution, kept out of source & logs |
All communication with and within Versus is encrypted — no plaintext transport of customer data at any hop.
Protected in layers, strongest around the most sensitive data:
Because Versus's crown jewels are infrastructure credentials, secret handling is its most engineered subsystem — a HashiCorp-style secrets engine built for least privilege and tamper-evidence.
personal/${user}/*) gives true least privilege; a controlled, audited super-admin break-glass path exists.PSM lets an operator act through a privileged credential without ever seeing it. Versus brokers SSH and HTTPS sessions, injecting the secret at the broker so it never reaches the operator's screen, clipboard, or client.
In multi-tenant SaaS, tenant data is separated in the database itself with fail-closed, forced PostgreSQL Row-Level Security. Every tenant-scoped table carries a tenant discriminator and a policy that constrains every read and write to the caller's tenant — a database guarantee, not an application convention. The tenant is derived from a signed token claim, applied per transaction, and the policy errors rather than leaks if context is missing.
BYPASSRLS role subject to forced RLS; privileged operations use a separate connection.Security-relevant events are recorded in hash-chained logs: each entry incorporates a hash of the previous one, so any retroactive alteration or deletion breaks the chain and is detectable — a stronger guarantee than an ordinary append log. Covered: secret access (Vault fetch/reveal), privileged sessions (PSM), administrative actions, and authentication events. Access to audit data is restricted and, in multi-tenant deployments, tenant-scoped.
Recurring automated security scanning runs across code, dependencies, containers, and the running application:
| Discipline | Tooling | What it catches |
|---|---|---|
| Static analysis (SAST) | Semgrep | Insecure code patterns, injection risks, unsafe APIs |
| Dependency & container scanning | Trivy | Known-vulnerable libraries and base-image CVEs |
| Secret scanning | Gitleaks | Credentials accidentally committed to source |
| Dynamic analysis (DAST) | OWASP ZAP | Runtime web-app vulnerabilities against the live app |
The on-prem agent is designed so a customer can grant Versus operational reach without surrendering control of credentials or exposing devices to inbound access. It is outbound-only over bearer-authenticated TLS on 443 (short-lived ES256 token signed with its CA-issued enrollment cert's key, no inbound listener), executes only Ed25519-signed, verified, replay-protected instructions, updates only from signed, checksum-verified manifests (with health-check and rollback), and resolves/injects credentials locally so they never leave the network. A demo Data Mask mode pseudonymizes IPs and object names on the collector. Full detail: Collector Security Architecture.
| Purpose | Algorithm | Notes |
|---|---|---|
| Transport encryption | TLS 1.2 / 1.3 | Modern cipher suites; bearer over TLS for collectors; HSTS on web |
| Secret encryption at rest | AES-256-GCM | Envelope: unique DEK per secret, wrapped by KEK; authenticated encryption |
| Field-level encryption | Authenticated symmetric encryption | Sensitive DB columns encrypted before persistence |
| Token / assertion signing | RS256 (RSA-SHA256) | Asymmetric — services verify without a shared secret |
| Collector bearer tokens | ES256 (ECDSA-SHA256) | Short-lived, per-request |
| Task & release signing | Ed25519 | Dispatch integrity, signed update manifests, license keys |
| Audit integrity | SHA-256 hash chaining | Tamper-evident logs |
| Key custody | Fail-closed key hierarchy | KEK/DEK separation; HSM/KMS root custody on roadmap |
Key management principles: keys are separated by purpose (encryption vs signing; dispatch vs release) and never reused across roles; key material is kept out of source and logs; DR-critical keys are handled under strict custody and never printed or written to shared files; key resolution fails closed.
| Question | Answer |
|---|---|
| Is all data encrypted in transit and at rest? | Yes. TLS 1.2+/1.3 for every network hop (bearer over TLS for collectors); storage-level plus application field-level encryption and AES-256-GCM envelope encryption for Vault secrets. |
| How are secrets stored, and who can see device credentials? | Envelope-encrypted with a unique key per secret, governed by path-and-capability policies, every access audited. With PSM, operators use a credential without seeing it; on-prem, credentials can stay entirely within your network. |
| How do you guarantee one customer can’t access another’s data? | Database-enforced, forced, fail-closed PostgreSQL Row-Level Security, with the tenant derived from a signed token — not application filtering alone. It contains even forgotten filters and ORM bugs. |
| Is MFA available and enforceable? | Yes — TOTP and passkeys/WebAuthn, enforceable as mandatory at a dedicated OIDC identity provider, with SSO/BYO-IdP for enterprises. |
| Can we keep our data in our jurisdiction / on our premises? | Yes. Deploy on-prem (OVA / KVM / Kubernetes) or air-gapped; data never leaves your network, and air-gapped installs never phone home. Regional SaaS is also available. |
| How do you detect tampering with logs or audit records? | Audit logs are hash-chained: each record binds the previous one, so any edit or deletion breaks the chain and is detectable. |
| What is your SOC 2 / ISO 27001 status? | The technical controls exist; a formal SOC 2 Type 2 examination is in progress — the remaining work is process and evidence, not missing controls. Control mapping and progress can be shared. |
| How is the software developed and scanned? | Recurring SAST (Semgrep), dependency/container (Trivy), secret (Gitleaks), and DAST (OWASP ZAP) scanning; reviewed, version-controlled changes; secrets excluded from source and images. |
| What does the agent you install on our network expose? | No inbound exposure. The collector is outbound-only over bearer-authenticated TLS on 443, executes only signed, verified, replay-protected instructions, and updates only from signed, checksum-verified manifests. |
| Do you support HSM/KMS-backed key management? | The key hierarchy is designed for it; HSM/KMS root custody is on the roadmap. Today keys are held under a fail-closed, access-controlled hierarchy with strict DR-key custody. |
| What happens to our data when we leave? | Tenant data can be exported and then deleted across the platform; on-prem, you control the entire lifecycle. |
| How are privileged/administrative actions controlled and reviewed? | RBAC gates actions; privileged device access is brokered and recorded via PSM; administrative actions are captured in the tamper-evident audit trail; tenant traffic never runs on privileged database roles. |