Viaduct publishes security fixes to main and, when practical, to the most recent tagged release. This remains a best-effort open-source process, not a guaranteed support window.
| Version | Maintenance |
|---|---|
main |
Best effort |
| most recent tagged release | Best effort when practical |
| older snapshots or forks | No |
Do not open public GitHub issues for suspected security vulnerabilities.
Instead:
- open a private GitHub security advisory for this repository, or
- contact the maintainer through GitHub with enough detail to reproduce the issue safely
When reporting a vulnerability, include:
- affected version or commit
- reproduction steps
- impact assessment
- any known mitigations or workarounds
- Good-faith reports will be acknowledged as promptly as practical.
- Coordinated disclosure is preferred whenever possible.
- Fixes may land on
mainbefore a follow-up patch release is cut.
- Never include secrets, tenant keys, service-account keys, or real environment credentials in a report.
- Prefer service-account keys for normal operator access. Reserve tenant keys for bootstrap or intentional tenant-admin actions.
- Tenant and service-account keys are persisted as non-recoverable hashes. Capture the raw value only when Viaduct returns it during create or rotate operations.
- The dashboard runtime auth flow keeps the actual API credential server-side and in an
httpOnlycookie. The browser stores only an opaque session identifier. - When
VIADUCT_ALLOWED_ORIGINSis empty, Viaduct stays same-origin only. Do not use*for API-key deployments. - Treat the local operator bootstrap as a direct loopback-only session flow. Protected tenant routes should not rely on ambient anonymous fallback in any shared or proxied environment.
- Keep
VIADUCT_ALLOW_UNAUTHENTICATED_REMOTE=falseoutside disposable break-glass scenarios.viaduct serve-apidefaults to loopback and should not be exposed remotely without explicit API credentials. - The API and bundled dashboard now emit CSP,
X-Content-Type-Options,X-Frame-Options, andReferrer-Policyheaders, with HSTS added automatically on HTTPS requests. - Do not expose the Vite development server as a shared or internet-facing surface.
See SUPPORT.md for non-security usage questions.