Skip to content

[DRAFT] [ARO-22413] Remove use of local FP Authorizer to fix int env#4582

Draft
mrWinston wants to merge 1 commit intomasterfrom
ARO-22413-int-env-changes
Draft

[DRAFT] [ARO-22413] Remove use of local FP Authorizer to fix int env#4582
mrWinston wants to merge 1 commit intomasterfrom
ARO-22413-int-env-changes

Conversation

@mrWinston
Copy link
Copy Markdown
Collaborator

@mrWinston mrWinston commented Feb 3, 2026

Which issue this PR addresses:

Fixes ARO-22413

What this PR does / why we need it:

  • Bringing back int means we'll need to have the INT RP create clusters in a separate, RH-owned int subscription
  • This requires the use of a "mock" FP principal to grant the int RP access to the separate subscription.
  • The new "mock" FP principal however would node be able to access the RPs subscription, only the "remote" subscription where clusters are created
  • This means, we need to replace all uses of the FP credential in the local subscription with the MSI credentials which the RP already uses

Changes:

Test plan for issue:

  • Currently testing in int
  • will require canary deployment to make sure other environments are not affected by the change

Is there any documentation that needs to be updated for this PR?

  • tbd

How do you know this will function as expected in production?

  • tbd

@mrWinston mrWinston mentioned this pull request Feb 3, 2026
@github-actions github-actions Bot added the needs-rebase branch needs a rebase label Mar 2, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Mar 2, 2026

Please rebase pull request.

Comment thread pkg/env/prod.go

clusterKeyvaultURI := azsecrets.URI(p, ClusterKeyvaultSuffix, keyVaultPrefix)
clusterKeyvaultClient, err := azsecrets.NewClient(clusterKeyvaultURI, localFPKVCredential, p.Environment().AzureClientOptions())
clusterKeyvaultClient, err := azsecrets.NewClient(clusterKeyvaultURI, msiCredential, p.Environment().AzureClientOptions())
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we confirm RP managed identity already has equivalent data-plane access on the cluster Key Vault (secrets + certificates)? This switches those clients from FP cert credentials to MSI, and missing KV permissions would show up as runtime 403s after deploy. Context:

ARO-RP/pkg/env/prod.go

Lines 168 to 176 in a518ae3

clusterKeyvaultURI := azsecrets.URI(p, ClusterKeyvaultSuffix, keyVaultPrefix)
clusterKeyvaultClient, err := azsecrets.NewClient(clusterKeyvaultURI, msiCredential, p.Environment().AzureClientOptions())
if err != nil {
return nil, fmt.Errorf("cannot create key vault secrets client: %w", err)
}
p.clusterKeyvault = clusterKeyvaultClient
clusterCertificatesClient, err := azcertificates.NewClient(clusterKeyvaultURI, msiCredential, p.Environment().AzureClientOptions())
if err != nil {

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-rebase branch needs a rebase

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants