refactor(blobmanager/s3accesspoint): slim AssumeRole session policy#3143
Merged
jiparis merged 1 commit intoMay 21, 2026
Merged
Conversation
Shrink the inline session policy passed to sts:AssumeRole so the inline document consumes minimal STS packed-policy budget, leaving headroom for tags inherited from the caller principal (IRSA / Pod Identity). Cross-tenant isolation continues to be enforced by the AP resource policy's aws:userid check against the role session name; the dropped per-tenant key-prefix Resource scoping was defense-in-depth and is no longer included in the session policy. Object keys remain prefixed by org UUID for collision avoidance at the bucket layer. Actions are reduced to s3:GetObject + s3:PutObject (HeadObject authorizes as s3:GetObject); the backend never calls DeleteObject or GetObjectAttributes. Assisted-by: Claude Signed-off-by: Jose I. Paris <jiparis@chainloop.dev> Chainloop-Trace-Sessions: ee4385fa-8011-4750-87cd-502097dda8b9
Contributor
AI Session AnalysisMissing AI Coding SessionsWe detected commits in this PR that were AI-assisted, but the matching Chainloop Trace session(s) could not be found in Chainloop. Please make sure the AI coding session evidence has been sent by the Chainloop CLI, or add the Learn more about Chainloop Trace. Powered by Chainloop and Chainloop Trace |
javirln
approved these changes
May 21, 2026
matiasinsaurralde
approved these changes
May 21, 2026
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
Shrinks the inline session policy that the S3-Access-Point CAS backend passes to
sts:AssumeRoleso chainloop's contribution to the STS packed-policy budget stays minimal, leaving headroom for session tags inherited from the caller principal (IRSA / Pod Identity).${apARN}/object/*); the per-tenant key-prefix on the Resource was defense-in-depth and is removed. Cross-tenant isolation continues to be enforced by the AP resource policy'saws:useridcheck against the role session name.s3:GetObjectands3:PutObject(HeadObject authorizes ass3:GetObject); the backend never callsDeleteObjectorGetObjectAttributes.AI disclosure
Assisted by Claude (Anthropic).