You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Allow to extract multiple identities (or just groups(?)) per token.
The problem rises when trying to map between a single token that contain several groups such as an AD token.
We can solve this problem by using rego to build virtual document of "subjects", instead of:
After that, we can evaluate the authorizer multiple time for each subject (while still maintaining backward compatibility support) and "allow" if we have one "allow" match.
Allow to extract multiple identities (or just groups(?)) per token.
The problem rises when trying to map between a single token that contain several groups such as an AD token.
We can solve this problem by using rego to build virtual document of "subjects", instead of:
we can have:
or more complex example:
for input:
evaluating "subjects" will return
After that, we can evaluate the authorizer multiple time for each subject (while still maintaining backward compatibility support) and "allow" if we have one "allow" match.
It'll require changing subject extractor to support multiple subjects: https://github.com/Soluto/tweek/blob/master/services/gateway/security/subjectExtractor.go#L62
same for userInfoFromRequest: https://github.com/Soluto/tweek/blob/master/services/gateway/security/authentication.go#L81
and running authorize for each userinfo until we have true:
https://github.com/Soluto/tweek/blob/master/services/gateway/security/authorization.go#L33
And there are other changes as these objects are pass along request utils and such
The text was updated successfully, but these errors were encountered: