Security at Cloudgate

Your apps run on servers and cloud accounts you own. Cloudgate keeps the keys to reach them encrypted, lets each person and each AI agent do only what you grant, and writes down every call an agent makes.

Where do your apps run?

On infrastructure you own. Cloudgate deploys to your Servers over SSH and into your own AWS or Google Cloud account; your apps and their data are not on a shared platform of ours. See what runs where on each of them.

Nothing of yours runs beside Cloudgate
On the hosted console, the machine Cloudgate runs on is refused to every Organization, so no customer Service can be placed there.
Cloud access you can read first
In AWS and Google Cloud, Cloudgate acts through a role you create from its setup template or script, which you can read before you run it. What it makes carries Cloudgate's own mark, and every change goes through a Plan you can read first.
Builds in your own cloud
On the hosted console, a cloud Service builds in its own account's build service (CodeBuild or Cloud Build). The source goes up without its .git folder, so no git token leaves Cloudgate, and a private registry password reaches the build only through the cloud's secret store and is deleted when the build ends.

How are secrets protected?

Encrypted when stored, absent from what Cloudgate sends back, and never shown to the people and agents that only need to know one is set.

Encrypted at rest with AES-256-GCM
Environment variables, SSH keys, git and cloud tokens, notification credentials and database passwords are stored encrypted, with a key kept outside the database.
Presence, not values
API responses replace a secret with whether it is set. The CLI sets a variable by name and never prints one back, and a template's generated passwords never appear in its Plan.
Wired, not copied
A wired variable such as DATABASE_URL: pg-1.url is filled in at deploy time and never saved as a value.

Who can do what?

Every member of an Organization has a role, and reaches only the Projects, Environments and Services granted to them.

Roles and grants

Members, roles and grants per Project, Environment and Service, with custom roles on Business.

SSO and SCIM

On the Business plan: SSO sign-in for domains your Organization has proven with DNS, and SCIM provisioning.

Two-step verification

Each person can turn on an authenticator app, with backup codes, from their account settings.

Keys that end

Personal keys expire after 90 days by default, and creating or deleting keys needs a signed-in console session, so deleting one really revokes it.

An audit log

What members and agents change is recorded in the Organization's audit log.

A guarded front door

The hosted console is https only with a Secure session cookie, and sign-up asks for a Cloudflare Turnstile check.

How are AI agents kept in bounds?

An AI agent never acts as you. It gets its own Agent: a member with its own role, grant and keys, which you can suspend at any moment.

How AI agents connect to Cloudgate over MCP
Scoped keys
An agent key works only at the MCP endpoint and the AI model Gateway. A personal key is refused there, and an agent key is refused everywhere else.
Every call recorded
Each call is one audit row with its outcome, allowed or refused, and the reason for a refusal.
Secrets masked out of every result
Logs included, every result passes through a mask that replaces stored secrets with••••••.
Rate limits
120 reads and 10 writes a minute per Agent. A call over budget is refused and recorded.
Things an agent never does
Apply a Plan, change or silence an alert, or hold the owner or admin role. Requests from a browser are refused outright.

Self-hosting? Read this first

On your own install, some of this is your job. We would rather say so plainly.

  • A fresh install serves plain http. Until you put it behind https, use an SSH tunnel or a private network to reach the console.
  • A database's external port is public. Docker's own rules come before the host firewall, so a published port is reachable from the internet. Leave it empty unless you mean that.
  • Keep it upgraded. Security fixes go into the latest release; re-running the installer upgrades in place. See how to self-host and upgrade Cloudgate.

How do I report a vulnerability?

Privately, on GitHub: on the Cloudgate repository's Security tab, choose Report a vulnerability. Only the maintainers can see the report. Please do not open a public issue or post about it until a fix is out. The policy is the repository's SECURITY.md.

What to include

  1. What you found, and where.

  2. How to reproduce it, step by step.

  3. Which version or commit you tested: the hosted console or a self-hosted one.

  4. What an attacker could do with it.

What happens next

We aim to acknowledge a report within a few working days and to keep you updated until it is fixed. Please give us reasonable time to release a fix before you disclose it. If you would like, we are happy to credit you in the release notes.

Security questions people ask

How do I report a security vulnerability in Cloudgate?

Report it privately on GitHub: on the Cloudgate repository's Security tab, choose Report a vulnerability. Only the maintainers can see the report. Please do not open a public issue or post about it. Include what you found, how to reproduce it, the version or commit you tested and what an attacker could do with it.

Where do my apps and data run?

On your own Servers, or in your own AWS or Google Cloud account. On the hosted console, no customer Service may run on the machine Cloudgate itself runs on, so your workloads stay on infrastructure you own.

Are my secrets encrypted?

Yes. Environment variables, SSH keys, tokens and database passwords are encrypted at rest with AES-256-GCM, and API responses show only whether a secret is set, never its value.

Can an AI agent read my secrets through Cloudgate?

Not the ones Cloudgate stores. Every result an Agent gets, logs included, passes through a mask that replaces stored secrets with ••••••. A value a build prints that Cloudgate never stored, or one shorter than six characters, is not masked, so keep both in mind.

Can Cloudgate staff see inside my Projects?

On the hosted console, the people who run it see each Organization’s account facts (plan, owner, counts), never its Services, variables, logs or shells, and cannot sign in as you. Helping inside a Project means you invite them as a member. What they do to an Organization is in its own audit log.

Does Cloudgate have a security certification such as SOC 2?

This site makes no claim to a certification. If your review needs answers to a security questionnaire, write to the Cloudgate team and we will tell you what we can.

Deploy on infrastructure you own

Start the 30-day free trial, connect your own server or cloud account, and keep your apps and data where you can see them.