Dependency review på PR
Dependency review kan brukes for å få oversikt over sårbarheter og lisenser i nye eller oppdaterte avhengigheter.
GitHub actions kan brukes for å få beskjed om sårbarheter og lisenser på PR, slik som i eksempelet under. Dette forutsetter at dependency graph er riktig satt opp for økosystemet. Gradle-økosystemet må håndteres på en spesiell måte, som vist i Transitive avhengigheter i Dependency Graph med Gradle. Se også Dependency graph i Sikkerhetshåndboka.
name: Review dependencies
on:
pull_request:
branches:
- 'main'
jobs:
dependency-review:
permissions:
contents: read # Required for reading repository
pull-requests: write # Required for dependency review comments
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Perform dependency review
uses: actions/dependency-review-action@v4
if: github.event_name == 'pull_request'
with:
comment-summary-in-pr: always
fail-on-severity: moderate
Team kan selv konfigurere hvordan dependency review skal fungere. For flere innstillinger, se GitHubs egen dokumentasjon.
For bruk sammen med dependency sumbission API-et, se GitHub egne anbefalinger for bruk av dependency submission og dependency review sammen.
Internal actions
Vi har noen internal actions i Kartverket, som ikke vil fungere med Dependency Review, siden repoene ikke er public. Det kan dere løse med å legge actionen inn i allowlisten til dependency review slik:
- name: Perform dependency review
uses: actions/dependency-review-action@v4
if: github.event_name == 'pull_request'
with:
comment-summary-in-pr: always
fail-on-severity: moderate
allow-dependencies-licenses: |
pkg:github/kartverket/repo-navn
pkg:github/kartverket/en-annen-action
Interne repoer blir kontinuerlig oppdatert av dependabot, og med Github Advanced Security så får vi varsler dersom actionen skulle være sårbar, det burde derfor ikke være noe problem å allowliste disse.