chore: Set permissions for GitHub actions

Restrict the GitHub token permissions only to the required ones; this way, even if the attackers will succeed in compromising your workflow, they won’t be able to do much.

- Included permissions for the action. https://github.com/ossf/scorecard/blob/main/docs/checks.md#token-permissions

https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions

https://docs.github.com/en/actions/using-jobs/assigning-permissions-to-jobs

[Keeping your GitHub Actions and workflows secure Part 1: Preventing pwn requests](https://securitylab.github.com/research/github-actions-preventing-pwn-requests/)

Signed-off-by: naveen <172697+naveensrinivasan@users.noreply.github.com>
pull/5519/head
naveen 2022-04-26 01:08:54 +00:00 committed by Richard Hansen
parent 0b5ee334d1
commit 2929a3c0bd
8 changed files with 30 additions and 0 deletions

View File

@ -3,6 +3,9 @@ name: "Backend tests"
# any branch is useful for testing before a PR is submitted # any branch is useful for testing before a PR is submitted
on: [push, pull_request] on: [push, pull_request]
permissions:
contents: read
jobs: jobs:
withoutpluginsLinux: withoutpluginsLinux:
# run on pushes to any branch # run on pushes to any branch

View File

@ -9,8 +9,15 @@ on:
schedule: schedule:
- cron: '0 13 * * 1' - cron: '0 13 * * 1'
permissions:
contents: read
jobs: jobs:
analyze: analyze:
permissions:
actions: read # for github/codeql-action/init to get workflow details
contents: read # for actions/checkout to fetch code
security-events: write # for github/codeql-action/autobuild to send a status report
name: Analyze name: Analyze
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:

View File

@ -8,6 +8,9 @@ on:
- 'v?[0-9]+.[0-9]+.[0-9]+' - 'v?[0-9]+.[0-9]+.[0-9]+'
env: env:
TEST_TAG: etherpad/etherpad:test TEST_TAG: etherpad/etherpad:test
permissions:
contents: read
jobs: jobs:
docker: docker:
runs-on: ubuntu-latest runs-on: ubuntu-latest

View File

@ -3,6 +3,9 @@ name: "Lint"
# any branch is useful for testing before a PR is submitted # any branch is useful for testing before a PR is submitted
on: [push, pull_request] on: [push, pull_request]
permissions:
contents: read
jobs: jobs:
lint-package-lock: lint-package-lock:
# run on pushes to any branch # run on pushes to any branch

View File

@ -3,6 +3,9 @@ name: "Loadtest"
# any branch is useful for testing before a PR is submitted # any branch is useful for testing before a PR is submitted
on: [push, pull_request] on: [push, pull_request]
permissions:
contents: read
jobs: jobs:
withoutplugins: withoutplugins:
# run on pushes to any branch # run on pushes to any branch

View File

@ -3,6 +3,9 @@ name: "rate limit"
# any branch is useful for testing before a PR is submitted # any branch is useful for testing before a PR is submitted
on: [push, pull_request] on: [push, pull_request]
permissions:
contents: read
jobs: jobs:
ratelimit: ratelimit:
# run on pushes to any branch # run on pushes to any branch

View File

@ -3,6 +3,9 @@ name: "Upgrade from latest release"
# any branch is useful for testing before a PR is submitted # any branch is useful for testing before a PR is submitted
on: [push, pull_request] on: [push, pull_request]
permissions:
contents: read
jobs: jobs:
withpluginsLinux: withpluginsLinux:
# run on pushes to any branch # run on pushes to any branch

View File

@ -3,6 +3,9 @@ name: "Windows Zip"
# any branch is useful for testing before a PR is submitted # any branch is useful for testing before a PR is submitted
on: [push, pull_request] on: [push, pull_request]
permissions:
contents: read
jobs: jobs:
build: build:
# run on pushes to any branch # run on pushes to any branch
@ -52,6 +55,8 @@ jobs:
deploy: deploy:
# run on pushes to any branch # run on pushes to any branch
# run on PRs from external forks # run on PRs from external forks
permissions:
contents: none
if: | if: |
(github.event_name != 'pull_request') (github.event_name != 'pull_request')
|| (github.event.pull_request.head.repo.id != github.event.pull_request.base.repo.id) || (github.event.pull_request.head.repo.id != github.event.pull_request.base.repo.id)