@@ -24,6 +24,8 @@ defaults:
2424    shell : pwsh 
2525jobs :
2626  determine_variables :
27+     permissions :
28+       contents : read 
2729    runs-on : ubuntu-latest 
2830    outputs :
2931      buildConfiguration : ${{ steps.setupVars.outputs.buildConfiguration }} 
@@ -40,14 +42,19 @@ jobs:
4042          echo "buildConfiguration=Release" | Out-File -FilePath $Env:GITHUB_OUTPUT -Encoding utf8 -Append 
4143        } 
4244   
43-   build :  
45+   build :
46+     permissions :
47+       contents : read 
4448    needs : [determine_variables] 
4549    uses : ./.github/workflows/build.yml 
4650    with :
4751      buildConfiguration : ${{needs.determine_variables.outputs.buildConfiguration}} 
4852    secrets : inherit 
4953
5054  validate_env :
55+     permissions :
56+       contents : read 
57+       id-token : write 
5158    needs : [build] 
5259    uses : ./.github/workflows/create_env.yml 
5360    with :
5865    secrets : inherit 
5966
6067  dockerfile_artifact :
68+     permissions :
69+       contents : read 
6170    runs-on : ubuntu-latest 
6271    steps :
6372      - uses : actions/checkout@v5 
@@ -71,16 +80,16 @@ jobs:
7180
7281  push_docker_image :
7382    if : inputs.buildConfiguration != '' 
83+     permissions :
84+       contents : read 
85+       packages : write 
7486    runs-on : ubuntu-latest 
7587    outputs :
7688      dockerTag : ${{ steps.createTag.outputs.dockerTag }} 
7789    env :
7890      REGISTRY : ghcr.io 
7991      DOCKER_BUILD_SUMMARY : false 
8092      DOCKER_BUILD_RECORD_UPLOAD : false 
81-     permissions :
82-       contents : read 
83-       packages : write 
8493    needs : [validate_env, dockerfile_artifact, determine_variables] 
8594    steps :
8695      - uses : actions/download-artifact@v6 
@@ -121,6 +130,9 @@ jobs:
121130          tags : ${{ steps.createTag.outputs.dockerTag }} 
122131
123132  create_env :
133+     permissions :
134+       contents : read 
135+       id-token : write 
124136    needs : [build, push_docker_image] 
125137    uses : ./.github/workflows/create_env.yml 
126138    with :
@@ -131,6 +143,9 @@ jobs:
131143    secrets : inherit 
132144
133145  deploy_db :
146+     permissions :
147+       contents : read 
148+       id-token : write 
134149    needs : [build, create_env] 
135150    uses : ./.github/workflows/deploy_db.yml 
136151    with :
@@ -139,12 +154,17 @@ jobs:
139154    secrets : inherit 
140155
141156  smoketests :
157+     permissions :
158+       contents : read 
142159    needs : [deploy_db, create_env] 
143160    uses : ./.github/workflows/smoketests.yml 
144161    with :
145162      webAppUrl : ${{needs.create_env.outputs.webAppUrl}} 
146163
147164  delete_env :
165+     permissions :
166+       contents : read 
167+       id-token : write 
148168    needs : [create_env, smoketests] 
149169    uses : ./.github/workflows/delete_env.yml 
150170    with :
0 commit comments