GitHub Actions-workflows met passende rechten maken.
CI-workflows hebben echte triggers, runtime en testcommando’s nodig. Houd rechten beperkt en stel geheimen niet bloot aan onbetrouwbare pullrequestcode.
Stem de werkwijze af op je taak.
Bepaal triggers, runtime en testcommando’s uit het project en geef alleen rechten die deze stappen nodig hebben. Scheid onbetrouwbare pullrequestuitvoering van geprivilegieerde releaseacties en controleer runnercompatibiliteit.
- Wat je aanlevert
- Repositorystack en CI-vereisten.
- Wat je krijgt
- Workflow-YAML-concept met beperkte rechten.
Bekijk de invoer en het resultaat.
Illustratieve invoer en uitvoer · een leervoorbeeld, geen live uitvoering van WebAct
Voorbeeld invoerveld
Create a GitHub Actions workflow for a Node 24 project with committed package-lock.json and npm test. Trigger on push and pull request. No publishing or secrets required.
Uitgewerkt voorbeeld
name: Tests
on: [push, pull_request]
permissions:
contents: read
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: actions/setup-node@v7
with:
node-version: 24
package-manager-cache: false
- run: npm ci
- run: npm test
Action major versions follow their official examples at editorial review. Confirm runner compatibility and pin reviewed commit SHAs if required by your repository policy.Laad deze invoer in de prompt en kopieer deze naar WebAct om de taak te proberen. Je resultaat kan afwijken van het voorbeeld.
Keuzes en probleemoplossing.
Moet een testworkflow standaard schrijfrechten krijgen?
Gebruik alleen-lezenrechten als de testjob niet hoeft te schrijven. Voeg privileges alleen toe voor een duidelijk vereiste actie.
Waarom faalt de workflow vóór het testcommando draait?
Controleer lockfile, runtimeversie, werkdirectory en runnereisen van de action. Setupfouten staan los van falende tests.
Bron voor deze werkwijze.
Probeer het met je eigen bron.
Vervang het voorbeeld door je eigen materiaal in de taakprompt. Behoud de eisen die je nodig hebt en kopieer de taak naar WebAct.
De taak aanpassen en kopiëren ↑