Documentation menu

Security

Public website, protected runtime, no plaintext secrets.

Product pages, docs, pricing, downloads, and the commercial portal are public-facing. Customer console, settings, report exports, evidence, gate mutations, production artifacts, and customer runtime data stay in the protected self-hosted runtime.

Public

Website, pricing, docs, changelog, status, trial installer, commercial portal, and public OpenAPI reference.

Protected

Customer console, settings, API tokens, report exports, evidence records, connector config, policies, and runtime audit trails.

Secret rules.

Never commit plaintext secrets, kubeconfigs, registry passwords, or OIDC client secrets.
Console settings show secret-backed status only, never values.
Pipeline starts in shadow mode before advisory or enforce.
Customer owner billing surface is separate from customer runtime.

Security controls

ControlPublic route split
Applies toWebsite, docs, pricing, download, changelog, login entry
Expected behaviorPublic content only. No customer runtime state or private evidence.
ControlCommercial portal
Applies to/portal on releasepassport.com
Expected behaviorSubscription, checkout, license, package/download access, and billing handoff only.
ControlProtected customer runtime
Applies to/console, /settings, /account, report exports, passport detail on customer domain
Expected behaviorRequires customer session and workspace membership.
ControlToken-gated mutation
Applies toGate evaluation and evidence ingestion
Expected behaviorBearer tokens are scoped and fail closed when missing or invalid.
ControlSecret-backed config
Applies toOIDC, payment provider, registry, connector tokens, database, storage
Expected behaviorUI shows status only; values stay in env/SOPS/secret manager.
ControlWebhook signature
Applies toPayment provider billing webhook
Expected behaviorOnly signed successful payment events can activate production entitlement.
ControlSanitized reports
Applies toJSON, CSV, Markdown exports
Expected behaviorNo tokens, kubeconfigs, private keys, payment keys, or raw secret values.
ControlScoped connectors
Applies toOrchestration, metrics, logs, CI/CD/GitOps, incidents/errors
Expected behaviorRead only configured namespaces, projects, apps, queries, jobs, services, and release scopes.
ControlOwner separation
Applies toBilling/license/package entitlement
Expected behaviorOwner app is not installed in customer self-hosted package.

Secrets that must never appear in Git or docs

OIDC client secret
Store in Kubernetes secret or customer secret manager. Docs may show the secret name, never the value.
Gate token
Store in CI secret store and Kubernetes secret when needed. Logs must not echo it.
Connector credentials
Use provider-specific minimal scope. Do not paste tokens into support requests.
Kubeconfig
Never commit. Prefer in-cluster service accounts with scoped RBAC.
Payment provider keys
Use payment provider secrets through env/SOPS only. Do not expose checkout or webhook secrets in public docs or client code.
License signing material
Owner-side only. Customer runtime reads entitlement status but does not expose signing keys.