Class CompiledRule
- java.lang.Object
-
- org.openmetadata.schema.entity.policies.accessControl.Rule
-
- org.openmetadata.service.security.policyevaluator.CompiledRule
-
public class CompiledRule extends Rule
This class is used in a single threaded model and hence does not have concurrency support
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.openmetadata.schema.entity.policies.accessControl.Rule
Rule.Effect
-
-
Constructor Summary
Constructors Constructor Description CompiledRule(Rule rule)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidevaluateAllowRule(OperationContext operationContext, SubjectContext subjectContext, ResourceContextInterface resourceContext, org.openmetadata.service.security.policyevaluator.SubjectContext.PolicyContext policyContext)voidevaluateDenyRule(OperationContext operationContext, SubjectContext subjectContext, ResourceContextInterface resourceContext, org.openmetadata.service.security.policyevaluator.SubjectContext.PolicyContext policyContext)voidevaluatePermission(String resource, ResourcePermission resourcePermission, org.openmetadata.service.security.policyevaluator.SubjectContext.PolicyContext policyContext)voidevaluatePermission(Map<String,ResourcePermission> resourcePermissionMap, org.openmetadata.service.security.policyevaluator.SubjectContext.PolicyContext policyContext)voidevaluatePermission(SubjectContext subjectContext, ResourceContextInterface resourceContext, ResourcePermission resourcePermission, org.openmetadata.service.security.policyevaluator.SubjectContext.PolicyContext policyContext)org.springframework.expression.ExpressiongetExpression()protected booleanmatchResource(String resource)static booleanoverrideAccess(Permission.Access newAccess, Permission.Access currentAccess)static org.springframework.expression.ExpressionparseExpression(String condition)static <T> voidvalidateExpression(String condition, Class<T> clz)Used only for validating the expressions when new rule is created-
Methods inherited from class org.openmetadata.schema.entity.policies.accessControl.Rule
equals, getCondition, getDescription, getEffect, getFullyQualifiedName, getName, getOperations, getResources, hashCode, setCondition, setDescription, setEffect, setFullyQualifiedName, setName, setOperations, setResources, toString, withCondition, withDescription, withEffect, withFullyQualifiedName, withName, withOperations, withResources
-
-
-
-
Constructor Detail
-
CompiledRule
public CompiledRule(Rule rule)
-
-
Method Detail
-
parseExpression
public static org.springframework.expression.Expression parseExpression(String condition)
-
validateExpression
public static <T> void validateExpression(String condition, Class<T> clz)
Used only for validating the expressions when new rule is created
-
getExpression
public org.springframework.expression.Expression getExpression()
-
evaluateDenyRule
public void evaluateDenyRule(OperationContext operationContext, SubjectContext subjectContext, ResourceContextInterface resourceContext, org.openmetadata.service.security.policyevaluator.SubjectContext.PolicyContext policyContext)
-
evaluateAllowRule
public void evaluateAllowRule(OperationContext operationContext, SubjectContext subjectContext, ResourceContextInterface resourceContext, org.openmetadata.service.security.policyevaluator.SubjectContext.PolicyContext policyContext)
-
evaluatePermission
public void evaluatePermission(Map<String,ResourcePermission> resourcePermissionMap, org.openmetadata.service.security.policyevaluator.SubjectContext.PolicyContext policyContext)
-
evaluatePermission
public void evaluatePermission(String resource, ResourcePermission resourcePermission, org.openmetadata.service.security.policyevaluator.SubjectContext.PolicyContext policyContext)
-
evaluatePermission
public void evaluatePermission(SubjectContext subjectContext, ResourceContextInterface resourceContext, ResourcePermission resourcePermission, org.openmetadata.service.security.policyevaluator.SubjectContext.PolicyContext policyContext)
-
matchResource
protected boolean matchResource(String resource)
-
overrideAccess
public static boolean overrideAccess(Permission.Access newAccess, Permission.Access currentAccess)
-
-