Design for NonAdmin short-lived cloud credentials#2143
Design for NonAdmin short-lived cloud credentials#2143kaovilai wants to merge 7 commits intoopenshift:oadp-devfrom
Conversation
Add design documents for enabling NonAdminBSL to use short-lived, cloud-native credentials (AWS STS, GCP WIF, Azure Workload Identity) with per-namespace isolation. Includes: - Main design doc with admin/non-admin workflows, per-provider credential formats, API changes, security analysis with impersonation risk assessment for all three cloud providers - Upstream Velero Azure fix proposal for per-BSL Workload Identity credential support (pkg/util/azure/credential.go) Generated with [Claude Code](https://claude.ai/code) via [Happy](https://happy.engineering) Co-Authored-By: Claude <noreply@anthropic.com> Co-Authored-By: Happy <yesreply@happy.engineering> Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>
|
Skipping CI for Draft Pull Request. |
|
@kaovilai: This pull request references OADP-7660 which is a valid jira issue. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
Important Review skippedAuto reviews are limited based on label configuration. 🚫 Excluded labels (none allowed) (1)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: kaovilai The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Show the BSL and Secret YAML for per-BSL Azure Workload Identity credential usage, including required useAAD config. Generated with [Claude Code](https://claude.ai/code) via [Happy](https://happy.engineering) Co-Authored-By: Claude <noreply@anthropic.com> Co-Authored-By: Happy <yesreply@happy.engineering> Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>
Link all code path references to GitHub permalinks using commit SHAs for both the OADP operator and upstream Velero repositories. Generated with [Claude Code](https://claude.ai/code) via [Happy](https://happy.engineering) Co-Authored-By: Claude <noreply@anthropic.com> Co-Authored-By: Happy <yesreply@happy.engineering> Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>
Add section explaining the per-BSL credential pipeline and why reading from the creds map (per-BSL) instead of env vars (per-process) is required for multi-tenant Azure Workload Identity support. Generated with [Claude Code](https://claude.ai/code) via [Happy](https://happy.engineering) Co-Authored-By: Claude <noreply@anthropic.com> Co-Authored-By: Happy <yesreply@happy.engineering> Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>
Moved to upstream Velero issue: vmware-tanzu/velero#9657 Generated with [Claude Code](https://claude.ai/code) via [Happy](https://happy.engineering) Co-Authored-By: Claude <noreply@anthropic.com> Co-Authored-By: Happy <yesreply@happy.engineering> Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>
|
@kaovilai: This pull request references OADP-7660 which is a valid jira issue. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
Link vmware-tanzu/velero#9657 in the upstream prerequisites section. Generated with [Claude Code](https://claude.ai/code) via [Happy](https://happy.engineering) Co-Authored-By: Claude <noreply@anthropic.com> Co-Authored-By: Happy <yesreply@happy.engineering> Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>
Move per-namespace SA token approach to Alternatives Considered section with rejection rationale: operator-managed token refresh adds too much complexity. Add token refresh responsibility comparison table showing kubelet (automatic) vs OADP operator (manual lifecycle management). Generated with [Claude Code](https://claude.ai/code) via [Happy](https://happy.engineering) Co-Authored-By: Claude <noreply@anthropic.com> Co-Authored-By: Happy <yesreply@happy.engineering> Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>
|
@kaovilai: No Jira issue is referenced in the title of this pull request. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
Summary
Upstream Prerequisite
Key Design Points
external_accountJSONTest plan
Note
Responses generated with Claude
Generated with Claude Code
via Happy