If you discover a security vulnerability in symptom-scribe, please email security details to the project maintainers rather than using the public issue tracker. This allows us to address the vulnerability before it becomes public knowledge.
IMPORTANT: Never commit .env or any files containing API keys, secrets, or credentials to version control.
How we protect secrets:
.envis listed in.gitignoreto prevent accidental commits.env.examplecontains placeholder values showing which variables are needed- Developers copy
.env.exampleto.env.localand fill in their own credentials
What to do if credentials are accidentally committed:
- Immediately invalidate the exposed credentials (rotate keys in provider dashboard)
- Remove the file from git tracking:
git rm --cached .env - Add to
.gitignoreif not already present - Commit the changes:
git commit -m 'Remove accidentally committed credentials' - Notify security team of the incident
For comprehensive history purging of accidentally committed secrets, see git-filter-repo documentation at https://github.com/newren/git-filter-repo
The VITE_SUPABASE_PUBLISHABLE_KEY is intentionally exposed in the browser build. This is the public anon key and is designed for browser access.
Security is enforced through:
- Supabase Row Level Security (RLS) policies
- Proper authentication and authorization checks
- Rate limiting on API endpoints
- Input validation and sanitization
Never place service role keys or API tokens in .env.local or .env. These must be configured via:
- Supabase Dashboard (Project Settings > Edge Functions > Secrets)
- Command line:
supabase secrets set KEY_NAME=value
This prevents accidental exposure in browser bundles.
Supabase credentials should be rotated periodically:
- Navigate to Supabase Dashboard > Project Settings > API
- Click "Regenerate" on any key
- Update your environment variables
- Redeploy application
Before committing:
- Never add
.env,.env.local, or other secret files - Always use
.env.exampleas the template - Don't hardcode API endpoints with credentials
- Use environment variables for all secrets
- Run
git statusto verify no secret files are staged
Initial commit (93fbbcf) contained exposed Supabase credentials in the .env file. These credentials have been invalidated. The .env file was removed from tracking in commit b6bfb80. Developers should be aware that cloning from commit 93fbbcf exposes the old (now invalidated) credentials from git history.