Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can a sub_id change? #131

Closed
PieterKas opened this issue Sep 23, 2024 · 5 comments
Closed

Can a sub_id change? #131

PieterKas opened this issue Sep 23, 2024 · 5 comments
Assignees
Labels
pre-last-call Issues that need to be addressed before we go for last call

Comments

@PieterKas
Copy link
Collaborator

PieterKas commented Sep 23, 2024

Is a sub_id considered constant throughout the transaction, or can this change over time. If it does change, how should the "old sub_id" be recorded? As part of the azd claim? Should we add information to that effect?

@tulshi and @gffletch

@gffletch
Copy link
Collaborator

I think we moved away from sub_id to just using sub. However, the larger question is an interesting one. Is there a case where in completing a requested transaction, one of the calls to one of the workloads SHOULD NOT receive the sub claim. Is the TraT then leaking information? I haven't thought about this more than writing this comment :)

@tulshi
Copy link
Collaborator

tulshi commented Oct 3, 2024

Hmm. interesting question. We do not have a means of creating constrained versions of TraTs today. I'd punt this for later though. I'm not sure this is critical to the TraTs draft as of now.

@gffletch
Copy link
Collaborator

I agree. Within a single trust domain, this is probably less of an issue.

@gffletch
Copy link
Collaborator

So I was have a conversation the other day about authorization and the topic of Transaction Tokens came up. One of the interesting discussion points was whether the authorization model is consistent throughout the life of the transaction token. For example, maybe the data tier doesn't know about users when it comes to enforcing authorization policy. Maybe that is done through fine-grained entitlements. That keeps the data tier from needing to reach into the user authorization store to determine which data the user can access. Or maybe there is a authorization layer closer to the edge that will redact data the user isn't allowed to see.

In either of these cases, should it be possible to get a replacement transaction token that doesn't have a sub but does have the list of data tier entitlements that are authorized for this particular request.

@gffletch gffletch added the pre-last-call Issues that need to be addressed before we go for last call label Jan 15, 2025
@tulshi
Copy link
Collaborator

tulshi commented Jan 23, 2025

George and I discussed this and I feel that the sub_id is a core value of the Transaction Token, which assures the user identity throughout the call chain. Changing that would be dangerous. We have therefore agreed to close this issue.

@tulshi tulshi closed this as completed Jan 23, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pre-last-call Issues that need to be addressed before we go for last call
Projects
None yet
Development

No branches or pull requests

4 participants
@gffletch @tulshi @PieterKas and others