Skip to content

Commit

Permalink
GitHub Workflows security hardening
Browse files Browse the repository at this point in the history
Summary:
X-link: facebookincubator/velox#6969

This PR adds explicit [permissions section](https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions) to workflows. This is a security best practice because by default workflows run with [extended set of permissions](https://docs.github.com/en/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token) (except from `on: pull_request` [from external forks](https://securitylab.github.com/research/github-actions-preventing-pwn-requests/)). By specifying any permission explicitly all others are set to none. By using the principle of least privilege the damage a compromised workflow can do (because of an [injection](https://securitylab.github.com/research/github-actions-untrusted-input/) or compromised third party tool or action) is restricted.
It is recommended to have [most strict permissions on the top level](https://github.com/ossf/scorecard/blob/main/docs/checks.md#token-permissions) and grant write permissions on [job level](https://docs.github.com/en/actions/using-jobs/assigning-permissions-to-jobs) case by case.

X-link: facebook/watchman#1071

Reviewed By: xavierd

Differential Revision: D50095358

Pulled By: genevievehelsel

fbshipit-source-id: 4fc80c6b7c48df08207f68420b48a90ffcfddf27
  • Loading branch information
sashashura authored and facebook-github-bot committed Oct 11, 2023
1 parent e7bff06 commit a7d451c
Showing 1 changed file with 3 additions and 0 deletions.
3 changes: 3 additions & 0 deletions build/fbcode_builder/getdeps.py
Original file line number Diff line number Diff line change
Expand Up @@ -988,6 +988,9 @@ def write_job_for_platform(self, platform, args): # noqa: C901
on:{run_on}
permissions:
contents: read # to fetch code (actions/checkout)
jobs:
"""
)
Expand Down

0 comments on commit a7d451c

Please sign in to comment.