Uh oh!
There was an error while loading. Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork 1
[P0] Rotate exposed secrets and externalize all runtime credentials #270
Copy link
Copy link
Open
Labels
area:deploymentBuild, config, deployment, infrastructureBuild, config, deployment, infrastructurearea:securitySecurity, privacy, auth, or secretsSecurity, privacy, auth, or secretspriority:P0Critical: blocks safe production launchCritical: blocks safe production launchproduction-readinessProduction readiness audit itemProduction readiness audit itemtype:hardeningSecurity/stability hardening taskSecurity/stability hardening task
Description
Activity
Metadata
Metadata
Assignees
Labels
area:deploymentBuild, config, deployment, infrastructureBuild, config, deployment, infrastructurearea:securitySecurity, privacy, auth, or secretsSecurity, privacy, auth, or secretspriority:P0Critical: blocks safe production launchCritical: blocks safe production launchproduction-readinessProduction readiness audit itemProduction readiness audit itemtype:hardeningSecurity/stability hardening taskSecurity/stability hardening task
Problem
The backend currently relies on credential-bearing files and hard-coded fallback secrets in the application configuration. The local audit found
.env, Firebase service account JSON, Apple private key material, and static fallback database/JWT values in or under the app workspace.src/main/resources/application.propertiesalso defines fallback DB credentials and a static JWT secret.Why this is not production ready
If any of these values are real or reused, they must be considered compromised. Shipping secrets inside the application artifact or keeping long-lived fallbacks in code makes accidental exposure likely and makes rotation difficult during incidents.
Evidence
ontime-back/src/main/resources/application.propertiescontains fallback DB password and static JWT secret.ontime-back/src/main/resources/ontime-c63f1-firebase-adminsdk-fbsvc-a043cdc829.jsonexists in the runtime resources path.ontime-back/src/main/resources/key/AuthKey_743M7R5W3W.p8exists in the runtime resources path.ontime-back/.envcontains database/JWT/OAuth values in the local workspace..gitignoreignores several of these files, but secrets are still present locally and can be copied into images through resource mounts or packaging.Required work
Acceptance criteria
src/main/resourcesor committed files.