Skip to content

feat(config): warn at boot when one secret serves several purposes #432

Description

@Bccorb

Why

When the dedicated secrets are unset, the service token (SEAMLESS_SERVICE_TOKEN, or API_SERVICE_TOKEN) is also the refresh token lookup key, the TOTP secret encryption key, the OAuth state key and the decoy subject key. The server adapter holds the same token. Rotating it after a leak then breaks every refresh token and every TOTP enrollment, which is a lockout.

What

  • Log a warning at boot naming each secret that falls back to the service token, and show it on /health/status
  • In production, refuse to boot while the TOTP encryption key falls back to the service token, unless explicitly allowed
  • Document the rotation story per secret in docs/production-operations.md

Done when

An operator can see which secrets are shared, and can rotate the service token without losing TOTP or refresh tokens.

Activity

  1. added this to the v0.19 milestone on Oct 17, 2026
  2. added theissue type on Oct 17, 2026
  3. added
    P1Security work outside the FIDO2 track
    secureServes the most-secure promise
    v0.19Targets the v0.19 release
    on Oct 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1Security work outside the FIDO2 tracksecureServes the most-secure promisev0.19Targets the v0.19 release

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions