WIP: IAM, RBAC, Creds — architecture map and consolidation plan#1466
Draft
markturansky wants to merge 1 commit intomainfrom
Draft
WIP: IAM, RBAC, Creds — architecture map and consolidation plan#1466markturansky wants to merge 1 commit intomainfrom
markturansky wants to merge 1 commit intomainfrom
Conversation
Current-state map of all tokens, credentials, service accounts, and auth flows across frontend, backend, operator, control plane, and ambient-api-server. Consolidation plan covering three improvements: 1. Unify identity around RH SSO (token exchange for runners, Keycloak clients for access keys, elimination of RSA exchange hack) 2. DB RBAC as source of truth with K8s reconciliation (Option A) 3. Extend credentials table to replace scattered K8s OAuth secrets Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Contributor
|
Important Review skippedIgnore keyword(s) in the title. ⛔ Ignored keywords (2)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise 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)
✨ Simplify code
Comment |
✅ Deploy Preview for cheerful-kitten-f556a0 ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
This PR adds two documents produced from a full audit of the platform's IAM landscape:
docs/internal/architecture/iam-architecture.md— current-state map of every token, credential, secret, service account, and auth flow in the system (frontend → backend → operator → control plane → ambient-api-server). Includes ASCII flow diagrams and tables for all token types, K8s Secrets, and service accounts.docs/internal/proposals/iam-consolidation-plan.md— three concrete improvement proposals:TokenRequestaccess keys with Keycloak confidential clients; replace the RSA exchange hack in runner pods with RFC 8693 OIDC Token Exchange; eliminate the control plane token server entirelyrole_bindingstable becomes the single admin write plane; a new reconciler syncs K8s RoleBindings from DB state; backend SSAR unchangeduser_id/scopecolumns to replace scattered per-user OAuth K8s Secrets (GitLab, Google, Jira, Gerrit, CodeRabbit) with a single auditable APIStatus
Design/discussion phase. No code changes. Looking for feedback on approach before implementation begins.
Key questions for reviewers
user_idcredentials be accessible project-wide or strictly per-user?Test plan
🤖 Generated with Claude Code