feat: remove M2M agent impersonation RBAC, keep OBO#197
Merged
Conversation
Drop the agents.<name>.m2m block and the impersonation.yaml / _agent-impersonation.tpl templates it rendered. Agents no longer get a deputy Role/ClusterRole letting mcp-kubernetes impersonate the agent's own identity. On-behalf-of is the only supported flow: muster mints a token with the human as sub and the agent SA in the act claim, and the mcp-kubernetes chart's obo-impersonate ClusterRole authorizes impersonating the human.
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.
Removes the M2M agent-impersonation feature from
agentic-platform-connectivity, part of the cross-repo M2M removal (mcp-oauth v0.18.7, muster #936, mcp-kubernetes #530). On-behalf-of (OBO) is the only supported agent->downstream flow.What changed
agents.<name>.m2mvalues block (both the umbrellaagentic-platformandagentic-platform-connectivity) and thekagent/agents/impersonation.yaml+_agent-impersonation.tpltemplates it rendered.Role/ClusterRolelettingmcp-kubernetesimpersonate the agent's own SA identity, nor aClusterRoleBindingbinding the agent's groups to cluster authz (e.g.read-all).suband the agent SA in the RFC 8693actclaim, and the mcp-kubernetes chart's*-obo-impersonateClusterRole (not this chart) authorizes impersonating the human. The human's downstream RBAC governs access.docs/authentication.mdto the OBO model and pruned M2M terminology from the agent values comments.Verification
helm lintpasses (0 chart failures); rendering withm2m.enabled=truenow produces zero impersonation objects (the value is inert). Coordinated with giantswarm-configs cleanup to drop the matching musterworkloadGroupGrants/actorDelegationPolicyand mcp-kubernetesimpersonateUser/alias/allowedActorskeys.