Skip to content

Commit 2bf1669

Browse files
authored
Merge pull request cli#12911 from cli/kw/deployment-oidc
Migrate Windows code signing from client secret to OIDC
2 parents e8cc7f9 + bd12a06 commit 2bf1669

1 file changed

Lines changed: 9 additions & 5 deletions

File tree

.github/workflows/deployment.yml

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -206,14 +206,19 @@ jobs:
206206
env:
207207
TAG_NAME: ${{ inputs.tag_name }}
208208
run: git tag "$TAG_NAME"
209-
# Azure Code Signing leverages the environment variables for secrets that complement the metadata.json
210-
# file generated above (AZURE_CLIENT_ID, AZURE_CLIENT_SECRET, AZURE_TENANT_ID)
211-
# For more information, see https://learn.microsoft.com/en-us/dotnet/api/azure.identity.defaultazurecredential?view=azure-dotnet
209+
- name: Authenticate to Azure for code signing
210+
if: inputs.environment == 'production'
211+
uses: azure/login@a457da9ea143d694b1b9c7c869ebb04ebe844ef5 # v2.3.0
212+
with:
213+
client-id: ${{ secrets.SPN_GITHUB_CLI_SIGNING_CLIENT_ID }}
214+
tenant-id: ${{ secrets.SPN_GITHUB_CLI_SIGNING_TENANT_ID }}
215+
allow-no-subscriptions: true
216+
# Azure Code Signing authenticates via OIDC (azure/login above). AZURE_CLIENT_ID and AZURE_TENANT_ID
217+
# are still passed so DefaultAzureCredential can identify the service principal.
212218
- name: Build release binaries
213219
shell: bash
214220
env:
215221
AZURE_CLIENT_ID: ${{ secrets.SPN_GITHUB_CLI_SIGNING_CLIENT_ID }}
216-
AZURE_CLIENT_SECRET: ${{ secrets.SPN_GITHUB_CLI_SIGNING }}
217222
AZURE_TENANT_ID: ${{ secrets.SPN_GITHUB_CLI_SIGNING_TENANT_ID }}
218223
DLIB_PATH: ${{ runner.temp }}\acs\bin\x64\Azure.CodeSigning.Dlib.dll
219224
METADATA_PATH: ${{ runner.temp }}\acs\metadata.json
@@ -255,7 +260,6 @@ jobs:
255260
shell: pwsh
256261
env:
257262
AZURE_CLIENT_ID: ${{ secrets.SPN_GITHUB_CLI_SIGNING_CLIENT_ID }}
258-
AZURE_CLIENT_SECRET: ${{ secrets.SPN_GITHUB_CLI_SIGNING }}
259263
AZURE_TENANT_ID: ${{ secrets.SPN_GITHUB_CLI_SIGNING_TENANT_ID }}
260264
DLIB_PATH: ${{ runner.temp }}\acs\bin\x64\Azure.CodeSigning.Dlib.dll
261265
METADATA_PATH: ${{ runner.temp }}\acs\metadata.json

0 commit comments

Comments
 (0)