Automatisatie & CI

Geef elke pipeline precies de toegang die ze nodig heeft

Automatiseer taken voor servers, netwerken en databanken in je pipelines met API-tokens. Beperk elke token tot de nodige diensten en rechten en stel een vervaldatum in.

GitHub Actions

Een databankback-up voor elke deploy

Voeg deze stap toe aan je deploy-workflow. De token in je secrets mag alleen schrijven naar deze ene databankdienst, dus zelfs een gelekte token kan aan niets anders komen.

.github/workflows/deploy.yml yaml
- name: Back up the database before deploying
  run: |
    curl -sf -X POST "https://api.faastic.com/v1/orgs/${{ vars.FAASTIC_ORG }}/services/${{ vars.DB_SERVICE }}/data/backups" \
      -H "Authorization: Bearer ${{ secrets.FAASTIC_TOKEN }}"
  # the token only has "read/write" on this one service, nothing else
Tokens afbakenen

Minimale rechten voor elke pipeline

Tokens beginnen met fst_ en maak je aan in het dashboard.

  • Lezen, of lezen & schrijven

    Een leestoken kan alleen kijken. Een token met lees- en schrijfrechten kan wijzigingen doen.

  • Beperkt tot gebieden

    Servers, netwerken, firewalls, load balancers, databanken, DNS en meer. Kies alleen wat de taak nodig heeft.

  • Beperkt tot projecten

    Hou je staging-pipeline weg van productie.

  • Beperkt tot één dienst

    Eén databank, één server. Al de rest blijft buiten bereik.

  • Met een vervaldatum

    Laat een token stoppen op een datum die jij kiest.

  • Nooit beheerrechten

    Geen enkele token kan teamleden of andere tokens beheren.

  • Door jou bevestigd

    Een token aanmaken vraagt je wachtwoord of authenticatiecode, zodat een gekaapte sessie er geen kan maken.

  • Gelogd per token

    Wijzigingen via een token verschijnen als jij, via die token.

Meer voorbeelden

Firewalls en stroom, vanuit een script

Zet een poort open wanneer een nieuwe dienst live gaat, neem een snapshot, herstart na een update. De volledige lijst endpoints staat in het OpenAPI-document.

HTTPS openzetten, dan herstarten bash
# Open HTTPS on a server (area: firewalls)
curl -s -X POST "https://api.faastic.com/v1/orgs/$ORG/services/$SERVER/firewall/rules" \
  -H "Authorization: Bearer $FAASTIC_TOKEN" -H "Content-Type: application/json" \
  -d '{"action":"ACCEPT","proto":"tcp","dport":"443","comment":"https"}'

# Reboot it after the deploy (area: servers)
curl -s -X POST "https://api.faastic.com/v1/orgs/$ORG/services/$SERVER/power" \
  -H "Authorization: Bearer $FAASTIC_TOKEN" -H "Content-Type: application/json" \
  -d '{"action":"reboot"}'

Veelgestelde vragen

Kan ik Faastic API-tokens gebruiken in GitHub Actions of een andere CI/CD-tool?

Ja. Maak een token voor de taak, bewaar het in de secrets van je pipeline en roep de API aan, bijvoorbeeld om voor elke deploy een back-up van je databank te nemen.

Hoe nauw kan ik een token begrenzen?

Alleen lezen of lezen & schrijven, beperkt tot onderdelen (servers, firewalls, databanken enzovoort), tot projecten of tot afzonderlijke diensten, met een vervaldatum. Geen enkel token kan teamleden of andere tokens beheren.

Wat als een token uitlekt?

Het kan alleen wat zijn scope toelaat, het stopt op zijn vervaldatum, en je kunt het op elk moment intrekken in de klantenzone. Elke wijziging die het maakte, staat in je activiteitenlogboek.

Hoe maak ik een token aan?

In de klantenzone onder Team → API-tokens. Je bevestigt met je wachtwoord of authenticatiecode, en het token wordt één keer getoond.

Maak je eerste token

In het dashboard onder Team → API-tokens. Kopieer hem één keer en bewaar hem in je secrets.