Skip to main content

Security

Security on ComputeSphere is defense-in-depth: every layer the platform owns enforces something, and the boundaries between platform-owned and customer-owned are spelled out — not implied. This page covers what runs where, and what you're responsible for on top.

The layered enforcement points are the same ones on the Architecture page: edge, gateway, spherelets. Each does one job.

Encryption​

ChannelWhat's enforced
Public → edgeTLS 1.2 minimum. Certificates are issued and renewed automatically for every auto-generated URL and for custom domains the moment they're attached.
Edge → ComputeSphere gatewayTLS re-encrypted. Requests never traverse the ComputeSphere network in cleartext.
Gateway → sphereletsInternal traffic is encrypted at the infrastructure layer. mTLS between gateway and spherelets is rolling out across all internal paths.
At restWhat's enforced
Service code and imagesEncrypted container registry storage (AES-256, platform-managed keys).
Configuration and secretsEnv vars and secret variables are encrypted at rest. Decryption happens only on the spherelet that runs your service.
Logs and metricsEncrypted at rest in the platform observability stores. Retention is documented on the data page.

Customer-managed encryption keys are available on request for Enterprise.

Tenant isolation​

The hierarchy is Account → Project → Environment → Service, and isolation tracks that structure end-to-end:

  • Across accounts. Resources in one account cannot read resources in another. There are no shared secrets, no shared filesystems, no shared identity scopes.
  • Across environments inside an account. A service in production cannot reach a service in staging unless you explicitly attach them. Secret variables are scoped to one environment and never leak across.
  • Across spherelets. Spherelets run in isolated runtime contexts. One service's spherelet cannot read another service's filesystem, env vars, or memory — even inside the same project.

The practical guarantee: a misconfiguration in one environment can't take the others down with it, and a compromise of one customer's spherelet can't reach yours.

Access controls​

Who can sign in​

SurfaceMechanism
ConsoleSign in with Google, GitHub, Microsoft, or email + password.
SSOSAML / OIDC on Team tier and up. SCIM user provisioning is in active development.
API / CLI / MCPAPI tokens prefixed csph_ for secret-scanning compatibility. Token issuance, scope selection, and revocation live on Settings → User tokens — see API keys.

What they can do​

Access comes from two places: a person's role in the account, and the level a team has on a project. An API token adds a third limit on top.

Account roles​

Everyone in an account has exactly one account role.

Account roleWhoOn the accountOn projects
OwnerOne person: the account's creator, until ownership is transferred.Everything an Admin can do, plus changing a member's role, removing members, transferring ownership and deleting the account.Full control of every project.
AdminAnyone the Owner makes an Admin, or who is invited as one.Invite people, create teams, put people in teams, and set what each team can do on each project.Admin on every project.
MemberEveryone else.Can see the account, its members and its teams. Can't change them.Can view every project. Anything more comes from a team.

Team project levels​

A team is given a level on a project, and every member of the team gets that level on that project only. Only an account Owner or Admin can add people to a team or set a team's level.

LevelWhat it adds
ViewableRead the project: environments, services, deployments, logs, and metrics.
EditableEverything in Viewable, plus create and change environments and services, deploy and roll back, and upload, change and delete files in SphereFiles.
AdminEverything in Editable, plus open a terminal on a spherelet with SphereShell, delete things, approve or reject builds, and change the deploy policy.

Someone in several teams that share the same project gets the highest of those levels. An account Admin or Owner already has more than any team level, so team levels matter for Members.

What each can do​

Member, no teamViewableEditableAdmin (team)Account AdminAccount Owner
View a project, its environments, services, logs and metricsYesYesYesYesYesYes
Create and change environments and servicesNoNoYesYesYesYes
Deploy and roll backNoNoYesYesYesYes
Upload, change and delete files in SphereFilesNoNoYesYesYesYes
Open a terminal on a spherelet with SphereShellNoNoNoYesYesYes
Read a service's environment variable valuesNoNoNoYesYesYes
Delete a service, database, environment, volume, snapshot or alert ruleNoNoNoYesYesYes
Delete the projectNoNoNoYesYesYes
Approve or reject a build that is waiting for approvalNoNoNoYesYesYes
Change the deploy policy, and deploy where approval is requiredNoNoNoYesYesYes
Set what agents may do in the projectNoNoNoYesYesYes
Transfer the project to another accountNoNoNoNoYesYes
Invite people to the accountNoNoNoNoYesYes
Create teams, add people to them, and set a team's level on a projectNoNoNoNoYesYes
Change a member's account role, or remove a memberNoNoNoNoNoYes
Transfer ownership of the account, or delete itNoNoNoNoNoYes

The columns Viewable, Editable and Admin (team) apply to the one project the team was given that level on. On every other project in the account the same person is back in the first column.

Admin through a team is admin of a project, not of the account. It never includes transferring the project, or managing members or teams.

API tokens​

Token scopeReach
UserWhatever the person who created it can do.
AccountThe same, limited to the accounts the token names.
ProjectThe same, limited to the projects the token names.

A token never has more access than the person who created it. Pick the narrowest scope that works.

Every state-changing action — service creation, deployment, token issuance, member invitation, config change, a team being given or losing a level on a project — is recorded by the platform. Customer-facing audit log surfaces are rolling out per resource type; check Settings → Audit log in the console for what's exposed today.

Shared responsibility​

LayerPlatform handlesYou handle
Edge protectionDDoS, WAF, TLS terminationApplication-level rate limiting
Network isolationCross-account, cross-environmentCross-service routing inside your environment
EncryptionIn transit, at rest, key managementApplication-level encryption of sensitive payloads (PII, PCI, etc.)
AccessToken issuance, scope enforcement, audit loggingToken storage, rotation, least-privilege scope selection
VulnerabilityPlatform infrastructure, base images you build fromYour application code, dependencies, image contents
CompliancePlatform certifications (see Compliance)Your data classification and handling for your customers

The right-hand column is the only column most teams need to ship a security review. Read it first.

Honest limits​

  • Customer-managed keys are Enterprise-only. Self-serve KMS / BYOK isn't on the Hobby / Pro / Team plan.
  • SSO is Team+. SAML / OIDC sign-in is gated at the Team tier. SCIM user provisioning is in active development — not yet GA.
  • Audit log surfaces are progressive. The platform records every state-changing action, but customer-facing audit-log views are rolling out per resource type. The complete catalog isn't all exposed in the console yet.
  • No customer-supplied WAF rules. The edge WAF is managed; you can't load your own rule set today.
  • No per-environment IP allowlist for outbound egress. Inbound has networking controls on supported tiers; outbound egress traffic from your spherelets exits via the platform's default route.
  • Internal mTLS is in flight. Internal traffic is already encrypted at the infrastructure layer; mTLS between gateway and spherelets is rolling out on all internal paths.

Reporting a vulnerability​

Email[email protected]
First acknowledgmentWithin one business day
Disclosure modelCoordinated. Good-faith research isn't pursued legally; researchers are recognized on request.

If you're looking for compliance artifacts (SOC 2, ISO 27001, audit reports) for a procurement review, see Compliance.

What's next​

  • Compliance — certifications and audit artifacts for procurement reviews.
  • Data — data retention, residency, and the platform's data-handling commitments.
  • Architecture — the layered model these controls are enforced on top of.
  • API tokens — how to issue, scope, and rotate programmatic credentials.