Veilig gebruik API tokens
Een API-token is een sleutel die volledige programmatische toegang tot je account via de REST API geeft. Als hij lekt, kan een aanvaller hetzelfde doen als jij. De volgende aanbevelingen verkleinen het risico dat dit gebeurt.
Behandel het token als een wachtwoord
- Plaats het token nooit in openbare repositories (GitHub, GitLab).
- Stuur het token niet via Discord, Slack of e-mail bij het oplossen van problemen.
- Sla het token op in een omgevingsvariabele of in een secrets-manager (HashiCorp Vault, AWS SSM Parameter Store, Doppler en dergelijke).
- Gebruik in de CI/CD-pipeline (geautomatiseerd build/deploy-systeem) de functie "masked secret", zodat het token niet in leesbare vorm in de logs verschijnt.
Rotatie van tokens
Trek het oude token onmiddellijk in en genereer een nieuwe in elk van de volgende situaties:
- Een werknemer die toegang had, vertrekt.
- In het dashboard zie je bij elk token een tijdstempel Laatst gebruikt - als je activiteit ziet die je niet verwachtte, trek het token dan onmiddellijk in.
- Minstens elke 90 dagen als routinematige hygiëne, ook al is er niets gebeurd.
Eén token = één doel
Plaats niet hetzelfde token in vijf verschillende scripts. Maak voor elke integratie een apart token aan:
epulzio_xxxxxxxxxxxxxxxx- alleen voor deployen via GitHub Actionsepulzio_xxxxxxxxxxxxxxxx- alleen voor Terraform of Pulumi (tools voor infrastructuurbeheer)epulzio_xxxxxxxxxxxxxxxx- voor een Grafana-dashboard dat metrics ophaalt
Als één token lekt, trek je alleen de betrokken in en de andere integraties blijven draaien.
Waar het token veilig bewaren
| Omgeving | Aanbevolen methode |
|---|---|
| Lokale CLI | Bestand ~/.config/epulzio/token met rechten chmod 600 (alleen jouw gebruiker leest het) |
| Docker | Docker secret of --env-file (niet hardcoded via ENV in Dockerfile) |
| Kubernetes | Object Secret gemount als omgevingsvariabele of bestand |
| GitHub Actions | Settings -> Secrets -> EPULZIO_TOKEN |
| Cloud-functies (AWS Lambda, GCP Functions) | AWS SSM Parameter Store of Google Secret Manager |
Token vs. ondertekeningsgeheim voor webhooks
Voor het verifiëren van binnenkomende webhooks (meldingen die we je sturen) gebruik je een apart ondertekeningsgeheim (HMAC signing secret), niet het API-token. Het zijn twee verschillende dingen. Details vind je in het artikel Een API-token genereren.