mirror of
https://github.com/sredevopsorg/deepseek-kubernetes-sandbox.git
synced 2026-11-03 01:13:24 +00:00
- the root Dockerfile is the primary artifact; versions.env is the single source of truth
- merge gateway-api/dsh-demo into examples/dsh-agents-as-a-service (manifests/, exposure variants)
- move the single-tenant template into examples/minimal-single-tenant
- publish the gateway as a nested package under the repository image
- mirror the DSH ref for release identities (first release dsh-v0.2.1-rc.2-r2)
- CI: lint/python/manifests/gateway-image, reusable multi-arch build, tag-driven release, weekly e2e
- docs: README, docs/{main-image,examples,gitflow,versioning}, example READMEs, AGENTS.md, governance
- SSO is opt-in again; gateway pull policy and cookie defaults match the documented demo
BREAKING CHANGE: example manifest paths, the gateway image name, and the removal
of deploy/ and gateway-api/ affect existing deployments; see the migration table
in README.md.
42 lines
1.8 KiB
Markdown
42 lines
1.8 KiB
Markdown
# Security policy
|
|
|
|
## Supported versions
|
|
|
|
Only the latest published release is supported. Image tags are immutable;
|
|
fixes ship as a new release (see docs/versioning.md).
|
|
|
|
## Reporting a vulnerability
|
|
|
|
Report vulnerabilities privately through GitHub Security Advisories:
|
|
|
|
https://github.com/sredevopsorg/deepseek-kubernetes-sandbox/security/advisories/new
|
|
|
|
Do not open a public issue, and do not include live credentials in a report.
|
|
You can expect an acknowledgement within a few days and a coordinated
|
|
disclosure once a fix is available.
|
|
|
|
## Threat notes specific to this project
|
|
|
|
- **Launch token in pod logs.** The example gateway reads DSH's launch token
|
|
from pod logs (pods/log). Anyone with access to those logs can impersonate a
|
|
tenant. Keep the gateway's RBAC namespace-scoped and treat pod logs as
|
|
sensitive. Replacing log scraping with an upstream token API is tracked in
|
|
the example architecture document.
|
|
- **SSO header trust boundary.** AUTH_PROXY_HEADER makes the gateway trust an
|
|
identity header (for example X-Forwarded-User). Enable it only when the
|
|
gateway Service is reachable exclusively through the authenticating proxy;
|
|
otherwise any client can spoof the header.
|
|
- **Shared provider key.** The example injects one DEEPSEEK_API_KEY into every
|
|
tenant sandbox (a warm-pool constraint). Treat tenants as mutually trusting
|
|
until per-tenant credentials or an egress proxy exist.
|
|
- **TLS is external.** Terminate TLS at an Ingress or Gateway and set
|
|
COOKIE_SECURE=true. Plain HTTP outside localhost exposes session cookies.
|
|
- **No secrets in the repository.** The repository only ships empty Secret
|
|
manifests and *.yaml.example files.
|
|
|
|
## Dependency and supply chain
|
|
|
|
GitHub Actions are pinned by commit SHA. The CodeQL workflow scans Python and
|
|
Actions. The release workflow publishes images with SBOM and provenance
|
|
attestations.
|