Przeglądaj źródła

chore: Set permissions for GitHub actions (#2496)

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 <[email protected]>
Naveen 3 lat temu
rodzic
commit
023eb3380d

+ 5 - 0
.github/workflows/android.yml

@@ -16,8 +16,13 @@ on:
   release:
     types: [published]
 
+permissions:
+  contents: read
+
 jobs:
   build:
+    permissions:
+      contents: write  # for actions/upload-release-asset to upload release asset
     runs-on: windows-latest
     strategy:
       fail-fast: false

+ 3 - 0
.github/workflows/cmake.yml

@@ -23,6 +23,9 @@ env:
   # Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
   BUILD_TYPE: Release
 
+permissions:
+  contents: read
+
 jobs:
   build_windows:
     name: Windows Build

+ 5 - 0
.github/workflows/linux.yml

@@ -15,8 +15,13 @@ on:
   release:
     types: [published]
 
+permissions:
+  contents: read
+
 jobs:
   build:
+    permissions:
+      contents: write  # for actions/upload-release-asset to upload release asset
     runs-on: ubuntu-latest
     strategy:
       fail-fast: false

+ 3 - 0
.github/workflows/linux_examples.yml

@@ -14,6 +14,9 @@ on:
       - 'examples/**'
       - '.github/workflows/linux_examples.yml'
 
+permissions:
+  contents: read
+
 jobs:
   build:
     runs-on: ubuntu-latest

+ 5 - 0
.github/workflows/macos.yml

@@ -15,8 +15,13 @@ on:
   release:
     types: [published]
 
+permissions:
+  contents: read
+
 jobs:
   build:
+    permissions:
+      contents: write  # for actions/upload-release-asset to upload release asset
     runs-on: macos-latest
     
     env:

+ 5 - 0
.github/workflows/windows.yml

@@ -15,8 +15,13 @@ on:
   release:
     types: [published]
 
+permissions:
+  contents: read
+
 jobs:
   build:
+    permissions:
+      contents: write  # for actions/upload-release-asset to upload release asset
     runs-on: windows-latest
     strategy:
       fail-fast: false

+ 3 - 0
.github/workflows/windows_examples.yml

@@ -14,6 +14,9 @@ on:
       - 'examples/**'
       - '.github/workflows/windows_examples.yml'
     
+permissions:
+  contents: read
+
 jobs:
   build:
     runs-on: windows-latest