Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds new alternative environment variable to support Azure DevOps Pipelines when using the azurerm backend.
AZURESUBSCRIPTION_SERVICE_CONNECTION_ID
: This is default env var spat out by the Azure DevOps Azure CLI Task and we want to use this by default if not explicitly supplied.ARM_OIDC_AZURE_SERVICE_CONNECTION_ID_BACKEND
andARM_CLIENT_ID_BACKEND
: These allow specifying an alternative service connection and client ID that the backend will use.This opens up the possibility of using separate identities for state and provider with OIDC auth. It is possible in limited scenarios by using CLI flags, but because they are persisted to the plan file it breaks some scenarios of separate identity for plan and apply.
With these environment variable we should be able to support with env vars, which is not possible now:
There is also an update to the backend docs to specify the least privilege role assignment required following testing.
Fixes: #34322 (comment) - There is a specific ask around using a separate credential for backend.
Target Release
1.12.x
CHANGELOG entry