SYLVA Labs · AI Pulse

Security & trust white paper

Architecture, threat model, and control mapping for your security review — grounded in the actual shipped install, not aspirational.

Companion to Azure services, data & security Audience Security reviewers, CISO teams Status Pre-release draft
Self-assessed, not third-party certified. This document reflects an internal review of the shipped product. AI Pulse has not yet undergone a formal third-party audit (e.g. SOC 2, ISO 27001) — where a control below is genuinely in place, we say so plainly; where it's planned but not yet built, it's labelled "roadmap," not implied as done.

Contents

On this page

1Architecture & isolation

Single-tenant by deployment: every customer gets a fully separate set of Azure resources in their own subscription. There is no shared database, application instance, or secret store between customers — isolation is structural, not a row-level flag inside a shared system.

2Data-flow diagram

Azure & Graph APIsyour tenant's own resources
AI Pulse portalmanaged identity, read-only
Postgres + Key Vaultyour resource group
Your peopleEntra sign-in
AI Pulse portal
Self-hosted LangfuseAI usage traces, same resource group
↓ the only line that crosses your tenant boundary ↓
AI Pulse portal
entitlement.sylva.sgtenant ID + subscription key only

3Threat model

The main risks a security reviewer would ask about, and what actually mitigates each one today.

RiskMitigation today
A compromised AI Pulse instance is used to pivot into other Azure resourcesThe managed identity is read-only (Reader/Cost Management Reader/Key Vault Secrets User) — it cannot modify, delete, or create resources, so a compromise can leak read access but cannot make changes elsewhere in your subscription.mitigated
A leaked secret exposes the database or gateway credentialsSecrets live in Key Vault, referenced (not copied) by the Container App. A secret leaked from the running container doesn't expose the Key Vault's other secrets or other customers' installs.mitigated
Cross-customer data leakageStructural isolation — separate subscription, database, and Key Vault per install. There's no shared code path that queries "all customers."mitigated
Network-level access to the database or Key Vault by an unauthorised party on the internetBoth currently allow public network access (protected by credentials/firewall rules, not network isolation). Locking these behind private endpoints is a planned hardening step, not yet shipped.partial
A malicious insider at SYLVA accesses customer dataNo standing access path exists to exploit — the only outbound touchpoint is the entitlement check, which never carries customer data.mitigated
Denial of service against the single portal instanceThe portal runs as a single replica today with no automatic failover (see Operations & support guide). A sustained outage of that one instance is a real availability risk at this stage.partial

4Control mapping

Mapped to the categories most security reviewers ask about first. This is a self-assessment, not a certification.

AreaStatusDetail
Encryption in transityesTLS enforced on every ingress (Container Apps ingress allowInsecure: false); Postgres connections require SSL.
Encryption at restyesAzure default platform-managed encryption for Postgres, Storage, and Key Vault.
Least-privilege access controlyesThree built-in read-only roles for the managed identity; see §1.
Audit loggingyesAdmin/change activity tracked with a configurable retention period; see the Data processing & privacy statement.
Network isolation (private endpoints)roadmapNot yet shipped — see the threat model row above.
Third-party security certificationnot yetNo SOC 2 / ISO 27001 report exists today. State clearly to reviewers rather than implying otherwise.
Vulnerability & dependency scanningyesContainer images are scanned; findings are tracked and remediated as part of the release process.

5Shared responsibility

ResponsibilityWho
Application code, secure defaults, least-privilege templateSYLVA
Granting install-time permissions correctly (§1 of the install guide)You — an admin with the right Azure/Entra privilege runs the install
Deciding which optional connectors to enable (Defender, Sentinel, M365)You
Underlying Azure platform security (physical, hypervisor)Microsoft Azure
Your own subscription-level policies, network rules, and other resourcesYou

6Security contact

To report a suspected security issue or ask a question not answered here, contact hello@sylva.sg.

SYLVA Labs Pte Ltd · AI Pulse — Security & Trust White Paper. Pre-release draft.

Companion to Azure services, data & security. Reflects the current shipping install; "roadmap" items are tracked and will be re-labelled once shipped.