KNOX-2998 - Path based authorization provider #875
Merged
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.
What changes were proposed in this pull request?
This change proposes a new authorization provider
PathAclsAuthz
that authorized based on request path. Authorization is done based on path matching similar to rewrite rules.Format is very similar to AclsAuthz provider with an addition of path. The format is
{path};{users};{groups}:{ips}
One important thing to note here is that the path is not plural, there has to be one and only one path defined.
In case one wants multiple paths they can define multiple rules with rule name as a parameter e.g.
KNOXTOKEN.{rule_name}.path.acl
These are special cases for rule names
This rule will be applied to ALL services defined in the topology
This rule will be applied to only the service {service_name}
ALL of these rules will be applied to service {service_name}.
NOTE: {rule_1} and {rule_2} can be any unique names.
Following are concrete examples of the the above rules:
How was this patch tested?
This patch was tested locally