[CRITICAL] Hardcoded API token in SettingsScreen broncode #2

Closed
opened 2026-08-05 21:11:31 +02:00 by eddy · 1 comment
Owner

Probleem

In src/screens/SettingsScreen.tsx:31 staat de productie Bearer token hardcoded als useState default:

const [token, setToken] = useState<string>('75231d5f2f9cfc40d99646f8d9d8ba890a5a55b01d09807cdcd5191e0d9bf19c');

Deze token zit in de gehele git-historie (sinds commit 23db445) en is daarmee zichtbaar voor iedereen met repo-toegang. Iedereen met deze token kan authenticeren tegen de API op weegschaal.eddydevink.nl.

Oplossing

Client-side:

  1. Verander de default naar lege string: useState<string>('')
  2. Verwijder de auto-save in de useEffect op regel 35-44 (die schrijft bij eerste render de defaults naar SecureStore zonder gebruikersconsent)
  3. Laat de gebruiker expliciet op "Instellingen opslaan" drukken

Server-side:

  1. Genereer een nieuwe token via SQL op de server
  2. Update de Obsidian vault met de nieuwe token

Git-geschiedenis: Overweeg git filter-branch of BFG Repo-Cleaner om de token uit de historie te verwijderen (optioneel, afhankelijk van of de repo ooit openbaar wordt).

## Probleem In `src/screens/SettingsScreen.tsx:31` staat de productie Bearer token hardcoded als `useState` default: ```tsx const [token, setToken] = useState<string>('75231d5f2f9cfc40d99646f8d9d8ba890a5a55b01d09807cdcd5191e0d9bf19c'); ``` Deze token zit in de gehele git-historie (sinds commit `23db445`) en is daarmee zichtbaar voor iedereen met repo-toegang. Iedereen met deze token kan authenticeren tegen de API op `weegschaal.eddydevink.nl`. ## Oplossing **Client-side:** 1. Verander de default naar lege string: `useState<string>('')` 2. Verwijder de auto-save in de `useEffect` op regel 35-44 (die schrijft bij eerste render de defaults naar SecureStore zonder gebruikersconsent) 3. Laat de gebruiker expliciet op "Instellingen opslaan" drukken **Server-side:** 1. Genereer een nieuwe token via SQL op de server 2. Update de Obsidian vault met de nieuwe token **Git-geschiedenis:** Overweeg `git filter-branch` of BFG Repo-Cleaner om de token uit de historie te verwijderen (optioneel, afhankelijk van of de repo ooit openbaar wordt).
eddy closed this issue 2026-08-05 21:32:45 +02:00
Author
Owner

Afgehandeld in PR #16.

Client-side (commit a27a969):

  • Hardcoded token vervangen door lege string in SettingsScreen.tsx
  • Auto-save useEffect verwijderd — geen ongewenste SecureStore writes meer

Server-side:

  • Nieuwe token 9a699486... toegevoegd aan auth_tokens tabel (naast bestaande, die blijft werken voor bestaande gebruikers)

Obsidian vault:

  • Homelab/Software ontwikkeling/Weegschaal App.md bijgewerkt met REST API ipv WebDAV, beide tokens genoteerd
Afgehandeld in PR #16. **Client-side (commit a27a969):** - Hardcoded token vervangen door lege string in `SettingsScreen.tsx` - Auto-save `useEffect` verwijderd — geen ongewenste SecureStore writes meer **Server-side:** - Nieuwe token `9a699486...` toegevoegd aan `auth_tokens` tabel (naast bestaande, die blijft werken voor bestaande gebruikers) **Obsidian vault:** - `Homelab/Software ontwikkeling/Weegschaal App.md` bijgewerkt met REST API ipv WebDAV, beide tokens genoteerd
Sign in to join this conversation.
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
eddy/weegschaal-app#2
No description provided.